sunet/scheme/httpd/surflets/surflet-request.scm

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))