- (let ((key (cookie-session-key ent (request-cookies req)))
- (has-cookie-key nil)
- (has-url-key nil))
- (if key
- (setq has-cookie-key t)
- (when (setq key (url-session-key (request-raw-uri req)))
- (setq has-url-key t)))
- (let* ((found-session (when key (find-websession key ent)))
- (session (aif found-session it (make-websession req ent))))
- (setf (websession-from-req req) session)
- (when found-session
- (if has-cookie-key
- (setf (websession-method session) :cookies)
- (when has-url-key
- (setf (websession-method session) :url))))
- session))))
-
+ (let* ((cookie-session-id (cookie-session-key ent (request-cookies req)))
+ (session-id (or url-session-id cookie-session-id))
+ (found-session (when session-id
+ (find-websession session-id ent)))
+ (session (aif found-session
+ it
+ (make-websession req ent))))
+ (cond
+ (cookie-session-id
+ (setf (websession-method session) :cookies))
+ (url-session-id
+ (setf (websession-method session) :url)))
+ (setf (websession-from-req req) session))))
+