From 2d59317980bc1f5f642ad186a7c4944aff8c77f6 Mon Sep 17 00:00:00 2001 From: Helmut Merz Date: Mon, 19 May 2025 17:07:16 +0200 Subject: [PATCH] write response directly in action handler => get rid of response:messages slot --- web/response.lisp | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/web/response.lisp b/web/response.lisp index 828b5e2..ce21d33 100644 --- a/web/response.lisp +++ b/web/response.lisp @@ -17,9 +17,9 @@ ;;;; predefined action handlers / default actions (defun render-msg (resp msg) - (if msg - (push msg (messages resp))) (prepare resp) + (if msg + (funcall (writer resp) (render-content resp msg))) (finish resp)) (defun set-cookie (resp msg) @@ -43,14 +43,13 @@ ((context :reader context :initarg :context) (core:actions :initform *default-actions*) (env :reader env :initarg :env) - (messages :accessor messages :initform nil) (headers :accessor headers :initform nil) (ctype :reader ctype :allocation :class) (responder :accessor responder) (writer :accessor writer))) (defmethod print-object ((resp response) s) - (shape:print-fields resp s 'messages)) + (shape:print-fields resp s)) (defgeneric render-content (resp msg)) @@ -95,8 +94,6 @@ (setf (writer resp) (funcall (responder resp) (list rcode headers))))) (defun finish (resp) - (dolist (msg (messages resp)) - (funcall (writer resp) (render-content resp msg))) (funcall (writer resp) nil :close t) (actor:stop resp))