Jocelyn Fiat
0d87c7939a
Fixed sending of chunk, especially the ending where there is an optional Trailer, and a mandatory final CRLF
...
Now put_chunk does not support anymore empty chunk, and thus does not call put_chunk_end if ever it is called with empty chunk content.
Fixed the `transfered_content_length' when dealing with chunk transfert encoding
2012-12-18 23:34:55 +01:00
Jocelyn Fiat
de93ce32ff
Added logger response wrapper, this is mainly to be able to save any response message to a file.
...
(debugging purpose)
2012-12-18 23:28:04 +01:00
Jocelyn Fiat
71b1bad53d
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
2012-12-18 23:25:54 +01:00
Jocelyn Fiat
82c779fd60
fixed autotests compilation
2012-12-17 17:53:06 +01:00
Jocelyn Fiat
68ec6fb29c
Made WSF_REQUEST.is_content_type_accepted safer.
2012-12-14 15:52:54 +01:00
Jocelyn Fiat
cc570f5abf
Added WSF_DEFAULT_*_RESPONSE
...
Fixed the method not allowed by setting the Allow: header
2012-12-14 15:52:35 +01:00
Jocelyn Fiat
8e31950285
Improved HTTP_AUTHORIZATION
2012-12-14 15:51:34 +01:00
Jocelyn Fiat
4612fdb5de
Added Authorization and Allow
...
Added is_empty and count
2012-12-14 15:51:12 +01:00
Jocelyn Fiat
6eb0ebd873
Merge pull request #16 from colin-adams/master
...
Implementation for automatic HEAD and first pass at HTTP 1.1 conformance contracts
2012-12-13 13:58:42 -08:00
Jocelyn Fiat
4a65015988
removed unused local variables
2012-12-13 18:43:15 +01:00
Jocelyn Fiat
e7f458fd50
added code that may be used to avoid breaking compatibility with new Eiffel Studio 7.2
...
This is experimental for now.
2012-12-13 18:16:01 +01:00
Jocelyn Fiat
b7505e67b8
Added to WSF_REQUEST
...
- raw_header_data: like meta_string_variable
- read_input_data_into (buf: STRING)
- is_content_type_accepted (a_content_type: READABLE_STRING_GENERAL): BOOLEAN
Changed raw_input_data to return IMMUTABLE_STRING_8
Added WSF_METHOD_NOT_ALLOWED_RESPONSE
Added WSF_TRACE_RESPONSE to respond TRACE request
Now Not_found response return html content if the client accepts, other text/plain
Implemented TRACE response, and Method not allowed as implementation of WSF_ROUTED_SERVICE.execute_default
2012-12-13 17:29:46 +01:00
Jocelyn Fiat
ff7d963d55
Fixed WGI_INPUT_STREAM read_to_string and append_to_string
2012-12-13 17:24:55 +01:00
Jocelyn Fiat
cb034fc94e
Added missing "context" classes for uri and starts_with mapping+handler (and helper classes).
...
So that it is address more needs.
Factorized code between "context" and non context classes.
2012-12-13 12:01:24 +01:00
Olivier Ligot
ed325f81e1
use /usr/lib/libfcgi.so instead of /usr/local/lib/libfcgi.so
...
This was already fixed in libfcgi.ecf
(commit 65a998cec3 )
This fixes the libfcgi-safe.ecf file
2012-12-12 13:34:50 +01:00
Colin Adams
eafb04719d
Actioned Jocelyns comments re. a_req and a_res
2012-12-11 19:26:06 +00:00
Jocelyn Fiat
df0d3e584c
Fixed issue related to vars that are already converted to WSF_TABLE
2012-12-10 11:00:06 +01:00
Colin Adams
365da7e30a
merged from upstream
2012-12-08 08:25:47 +00:00
Jocelyn Fiat
e20cb6b6ed
make it compiles with EiffelStudio 7.1 and 7.2
2012-12-07 14:55:38 +01:00
Colin Adams
58f26fdc1b
Revert do_get_head patch
2012-12-06 19:48:13 +00:00
Jocelyn Fiat
39c3e8c5cf
corrected null connector ecf files
2012-12-05 22:39:05 +01:00
Jocelyn Fiat
9499d4aa59
added tests\all-safe.ecf to compile most of EWF's lib, to quickly check the compilation state
2012-12-05 22:30:28 +01:00
Jocelyn Fiat
20c94e927d
use libfcgi(-safe).ecf rather than fcgi(-safe).ecf
2012-12-05 22:30:26 +01:00
Jocelyn Fiat
5de14b114e
Provide a way to log into a file, rather than just console output
...
Minor optimization for WSF_LOGGING_FILTER
2012-12-05 22:30:24 +01:00
Jocelyn Fiat
a9f3ea7886
Prepare upcoming support for unicode environment variables
2012-12-05 22:30:21 +01:00
Jocelyn Fiat
d445559890
removed fcgi(-safe).ecf files ... since there renamed libfcgi(-safe).ecf
2012-12-05 22:30:19 +01:00
Olivier Ligot
075ac1d628
Logging filter
...
The logging filter is now part of EWF core (before it was only available in
the filter example) and can therefore be reused by others needing it.
Note that this is a first implementation. It can certainly be improved in
the future to support more fine grained logging.
2012-12-05 22:30:12 +01:00
Jocelyn Fiat
156406f9ac
Fixed various compilation issue with new self documentation
...
Improved the self documentation handler to provide a make_hidden creation procedure
2012-12-03 12:20:12 +01:00
Jocelyn Fiat
e0166a4c44
Merge branch 'master' of github.com:EiffelWebFramework/EWF
2012-12-03 11:30:47 +01:00
Jocelyn Fiat
c2fa3cd70a
Merge branch 'master' of github.com:EiffelWebFramework/EWF
2012-12-03 11:13:59 +01:00
Jocelyn Fiat
aa0207bece
updated ecf path
2012-12-03 11:12:53 +01:00
Jocelyn Fiat
125d44ff67
Added debug clause to detect in WSF_ROUTER.map_with_request_methods the existing conflicts with similar mapping.
...
Added smart handling of HEAD request.
Exported some internal features of WSF_REQUEST and WSF_RESPONSE to respectively WSF_REQUEST_EXPORTER and WSF_RESPONSE_EXPORTER
2012-11-26 22:58:48 +01:00
Jocelyn Fiat
bdee22f647
added debug_output to WSF_ROUTER_MAPPING
2012-11-26 22:37:44 +01:00
Jocelyn Fiat
8b5353df0a
Avoid using INDEXABLE_ITERATION_CURSOR.is_last
2012-11-26 16:06:08 +01:00
Jocelyn Fiat
f18ef477b8
Included the library base(-safe).ecf which was forgotten by mistake.
2012-11-25 21:30:10 +01:00
Colin Adams
a9d83f97a8
Completed first pass for HTTP 1.1 conformace contracts
2012-11-24 15:45:42 +00:00
Colin Adams
68cd78d87d
Forced HEAD when GET requested
2012-11-24 14:13:38 +00:00
Colin Adams
496df96f75
First postconditions relating to response codes added
2012-11-24 14:02:26 +00:00
Colin Adams
17ce1be582
Added framework for HTTP-conforming contracts
2012-11-24 11:55:10 +00:00
Jocelyn Fiat
af07986eec
New design for self documented router.
...
The documentation is built only on demand.
A mapping entry can be hidden for the documentation
One can change the status code when building itself the WSF_ROUTER_SELF_DOCUMENTATION_MESSAGE
2012-11-23 22:49:11 +01:00
Jocelyn Fiat
108ab43031
Made encoder and error library compilable with 6.8
2012-11-23 18:56:09 +01:00
Jocelyn Fiat
c654759d8e
Added SHARED_... classes for encoders (html, url, xml, json, ...)
2012-11-23 18:06:56 +01:00
Jocelyn Fiat
f817008bcd
Do not use {INDEXABLE_ITERATION_CURSOR}.is_last since it is added from EiffelStudio v7.2
2012-11-23 18:04:21 +01:00
Jocelyn Fiat
66ac29b3fc
Updated signatures for the self documentated message
2012-11-23 15:59:56 +01:00
Jocelyn Fiat
dcb630ce98
Updated self documentation
2012-11-23 15:52:59 +01:00
Jocelyn Fiat
d8b6f80411
Added WSF_NOT_FOUND_RESPONSE to respond 404 Not found page
2012-11-23 15:52:39 +01:00
Jocelyn Fiat
9fcb897b0b
Allow to use WSF_ROUTER_SELF_DOCUMENTATION_MESSAGE without any WSF_ROUTER_SELF_DOCUMENTATION_HANDLER
...
i.e without any specific URL to this self documentation.
Added custom value such as header, footer, style css url ...
2012-11-23 14:12:13 +01:00
Jocelyn Fiat
5926bbc0c2
Fixed signature of WSF_MIME_HANDLER.handle
2012-11-23 12:39:16 +01:00
Jocelyn Fiat
52cc743997
Added WSF_ROUTER.has_item_associated_with_resource and item_associated_with_resource
...
Added WSF_ROUTER_MAPPING.associated_resource
Added WSF_ROUTER_SELF_DOCUMENTATION_HANDLER and WSF_ROUTER_SELF_DOCUMENTATION_MESSAGE to provide a self documentation for WSF_ROUTER (for now, only HTML)
2012-11-23 12:38:49 +01:00
Jocelyn Fiat
ee13393a91
Made WSF_ROUTER_METHODS.new_cursor an INDEXABLE_ITERATION_CURSOR which is richer than just ITERATION_CURSOR
2012-11-23 10:07:33 +01:00