24 lines
937 B
Scheme
24 lines
937 B
Scheme
;; Copyright Andras Bernauer (2003)
|
|
|
|
;; somehow `extend' httpd-request
|
|
(define-record-type surflet-request :surflet-request
|
|
(make-surflet-request request input-port)
|
|
surflet-request?
|
|
(request surflet-request-request)
|
|
(input-port surflet-request-input-port))
|
|
|
|
(define-record-discloser :surflet-request
|
|
(lambda (r)
|
|
(list 'surflet-request
|
|
(surflet-request-request r))))
|
|
|
|
(define (make-fake-selector request-selector)
|
|
(lambda (surflet-request)
|
|
(request-selector (surflet-request-request surflet-request))))
|
|
|
|
(define surflet-request-method (make-fake-selector request-method))
|
|
(define surflet-request-uri (make-fake-selector request-uri))
|
|
(define surflet-request-url (make-fake-selector request-url))
|
|
(define surflet-request-version (make-fake-selector request-version))
|
|
(define surflet-request-headers (make-fake-selector request-headers))
|
|
(define surflet-request-socket (make-fake-selector request-socket)) |