racket/collects/web-server/dispatchers/dispatch-pathprocedure.ss
2008-02-24 21:27:36 +00:00

22 lines
658 B
Scheme

#lang scheme/base
(require mzlib/contract
net/url)
(require "dispatch.ss"
"../private/util.ss"
"../private/response.ss"
"../private/request-structs.ss"
"../private/response-structs.ss")
(provide/contract
[interface-version dispatcher-interface-version?]
[make (string? (request? . -> . response?) . -> . dispatcher?)])
(define interface-version 'v1)
(define ((make the-path procedure) conn req)
(define path (url-path->string (url-path (request-uri req))))
(if (string=? the-path path)
(output-response/method
conn
(procedure req)
(request-method req))
(next-dispatcher)))