Added basic support for "Expect" http header

i.e:   WSF_REQUEST.http_expect: detachable READABLE_STRING_8

Added WSF_REQUEST.request_time_stamp: INTEGER_64
This commit is contained in:
Jocelyn Fiat
2012-12-18 23:25:54 +01:00
parent 82c779fd60
commit 71b1bad53d
4 changed files with 36 additions and 1 deletions

View File

@@ -44,6 +44,8 @@ feature -- Access
http_connection: STRING = "HTTP_CONNECTION" http_connection: STRING = "HTTP_CONNECTION"
http_expect: STRING = "HTTP_EXPECT"
http_referer: STRING = "HTTP_REFERER" http_referer: STRING = "HTTP_REFERER"
http_transfer_encoding: STRING = "HTTP_TRANSFER_ENCODING" http_transfer_encoding: STRING = "HTTP_TRANSFER_ENCODING"

View File

@@ -559,6 +559,12 @@ feature -- HTTP_*
deferred deferred
end end
http_expect: detachable READABLE_STRING_8
-- The Expect request-header field is used to indicate that particular server behaviors are required by the client.
-- Example: '100-continue'.
deferred
end
http_host: detachable READABLE_STRING_8 http_host: detachable READABLE_STRING_8
-- Contents of the Host: header from the current request, if there is one. -- Contents of the Host: header from the current request, if there is one.
deferred deferred

View File

@@ -196,6 +196,13 @@ feature -- Access: HTTP_* CGI meta parameters - 1.1
Result := meta_string_variable ({WGI_META_NAMES}.http_connection) Result := meta_string_variable ({WGI_META_NAMES}.http_connection)
end end
http_expect: detachable READABLE_STRING_8
-- The Expect request-header field is used to indicate that particular server behaviors are required by the client.
-- Example: '100-continue'.
do
Result := meta_string_variable ({WGI_META_NAMES}.http_expect)
end
http_host: detachable READABLE_STRING_8 http_host: detachable READABLE_STRING_8
-- Contents of the Host: header from the current request, if there is one. -- Contents of the Host: header from the current request, if there is one.
do do

View File

@@ -911,6 +911,13 @@ feature -- HTTP_*
Result := wgi_request.http_connection Result := wgi_request.http_connection
end end
http_expect: detachable READABLE_STRING_8
-- The Expect request-header field is used to indicate that particular server behaviors are required by the client.
-- Example: '100-continue'.
do
Result := wgi_request.http_expect
end
http_host: detachable READABLE_STRING_8 http_host: detachable READABLE_STRING_8
-- Contents of the Host: header from the current wgi_request, if there is one. -- Contents of the Host: header from the current wgi_request, if there is one.
do do
@@ -965,13 +972,26 @@ feature -- Extra CGI environment variables
request_time: detachable DATE_TIME request_time: detachable DATE_TIME
-- Request time (UTC) -- Request time (UTC)
local
i: like request_time_stamp
do
i := request_time_stamp
if i > 0 then
Result := date_time_utilities.unix_time_stamp_to_date_time (i)
end
end
request_time_stamp: INTEGER_64
-- Request time stamp (UTC) (unix time stamp)
do do
if if
attached {WSF_STRING} meta_variable ({WSF_META_NAMES}.request_time) as t and then attached {WSF_STRING} meta_variable ({WSF_META_NAMES}.request_time) as t and then
t.value.is_integer_64 t.value.is_integer_64
then then
Result := date_time_utilities.unix_time_stamp_to_date_time (t.value.to_integer_64) Result := t.value.to_integer_64
end end
ensure
Result = 0 implies meta_variable ({WSF_META_NAMES}.request_time) = Void
end end
feature -- Cookies feature -- Cookies