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:
1999-09-19 12:55:29 +00:00
parent 23eb318329
commit d9cf8a6965
3 changed files with 25 additions and 10 deletions

View File

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