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
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
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
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
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
Colin Adams
58f26fdc1b
Revert do_get_head patch
2012-12-06 19:48:13 +00: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
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
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
Jocelyn Fiat
fdd40ff08d
minor change: reuse local variable
2012-11-21 09:48:58 +01:00
Jocelyn Fiat
59316c9c65
Added WSF_ROUTER_ITEM to replace a structure represented with named TUPLE
...
Added debug_output to ease debugging
2012-11-20 13:49:40 +01:00
Jocelyn Fiat
814ea051f1
Fixed compilation
2012-10-23 13:09:26 +02:00
Jocelyn Fiat
56214129bd
Provide `server_url: STRING' that compute the http://server_name:port or https://...
...
using `server_name', `server_port', `server_protocol' and avoid using `http_host'
which is not reliable and could be cause of security issue.
2012-10-23 12:10:33 +02:00
Jocelyn Fiat
50d5254060
Added WSF_REQUEST_UTILITY_PROXY, that provides the WSF_REQUEST_UTILITY features to a class that implement request: WSF_REQUEST
2012-10-22 17:09:57 +02:00
Jocelyn Fiat
2e774f2e10
Added WSF_ROUTING_CONTEXT_HANDLER
2012-10-22 14:27:03 +02:00
Jocelyn Fiat
84d1f20fd0
Do not set default status if a status is already set.
2012-10-22 11:15:52 +02:00
Jocelyn Fiat
fb3148aeea
Using anchor type to create the router
...
this is more flexible for eventual descendants redefining the router
2012-10-22 11:15:23 +02:00
Jocelyn Fiat
aa743c0a7d
Removed generic parameter in WSF_FILTER_HANDLER, since it is useless and make code heavy
...
Signed-off-by: Olivier Ligot <oligot@gmail.com >
Signed-off-by: Jocelyn Fiat <jfiat@eiffel.com >
2012-10-08 10:40:44 +02:00
Jocelyn Fiat
016efaed15
Updated Copyright
2012-10-04 15:04:14 +02:00
Jocelyn Fiat
55e4602faf
Fixed compilation for STARTS_WITH_ handler
2012-10-04 14:52:28 +02:00
Jocelyn Fiat
737213b44c
Added WSF_RESOURCE_CONTEXT_HANDLER_HELPER
2012-10-04 14:46:28 +02:00
Jocelyn Fiat
2f6a6cbf5f
Added notion of mapping factory, so one can implement a handler without having to implement new_mapping
...
Added filter context handler
Added WSF_STARTS_WITH_ROUTING_HANDLER and WSF_URI_ROUTING_HANDLER (in addition to the uri template version)
2012-10-04 14:31:03 +02:00
Jocelyn Fiat
6619349f7b
Fixed some configuration files (ecf)
...
Fixed various compilation issue
Fixed draft rest library (still experimental and should be removed in the future)
2012-10-01 12:04:17 +02:00
Jocelyn Fiat
291bb3a33b
moved wsf_extension inside wsf/extension as wsf/wsf_extension.ecf
...
added wsf/session as wsf/wsf_session.ecf
In descendants of WSF_HANDLER , we can keep the result of new_mapping as WSF_ROUTER_MAPPING
2012-09-28 14:42:31 +02:00