Modified the selection of request and response classes to take into
account the server we are servicing, so that each server only sees and creates request/response classes he knows he can handle. This also makes it possible to add request/response classes in a running system, and to run servers of different versions side-by-side in an image without affecting each other...
This commit is contained in:
@ -75,10 +75,11 @@ request object, which references the given server."))
|
||||
(defmethod parse-request (server stream)
|
||||
(multiple-value-bind (method url version)
|
||||
(parse-request-line stream)
|
||||
(let ((request (make-instance (get-request-class version)
|
||||
:server server
|
||||
:method method
|
||||
:url url)))
|
||||
(let ((request (make-instance
|
||||
(get-request-class-using-server server version)
|
||||
:server server
|
||||
:method method
|
||||
:url url)))
|
||||
(parse-request-remainder request stream)
|
||||
request)))
|
||||
|
||||
|
||||
Reference in New Issue
Block a user