From 0a1c4676a4c5739cc32ac6173150dac1c419ac4f Mon Sep 17 00:00:00 2001 From: Jocelyn Fiat Date: Mon, 18 Jul 2011 16:29:43 +0200 Subject: [PATCH] add output helper feature to RESPONSE --- .../server/ewsgi/src/response/gw_response.e | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/library/server/ewsgi/src/response/gw_response.e b/library/server/ewsgi/src/response/gw_response.e index 6dd09407..a14ab246 100644 --- a/library/server/ewsgi/src/response/gw_response.e +++ b/library/server/ewsgi/src/response/gw_response.e @@ -20,6 +20,48 @@ feature -- Access: Output header.send_to (output) end +feature -- Output operation + + write_string (s: STRING) + do + output.put_string (s) + end + + write_file_content (fn: STRING) + -- Send the content of file `fn' + do + output.put_file_content (fn) + end + + write_header (a_status: INTEGER; a_headers: detachable ARRAY [TUPLE [key: STRING; value: STRING]]) + -- Send headers with status `a_status', and headers from `a_headers' + local + h: GW_HEADER + i,n: INTEGER + do + h := header + h.put_status (a_status) + if a_headers /= Void then + from + i := a_headers.lower + n := a_headers.upper + until + i > n + loop + h.put_header_key_value (a_headers[i].key, a_headers[i].value) + i := i + 1 + end + end + send_header + end + + write_header_line (s: STRING) + -- Send `s' to http client as header line + do + write_string (s) + write_string ("%R%N") + end + feature -- Header header: GW_HEADER