Jocelyn Fiat
f18ef477b8
Included the library base(-safe).ecf which was forgotten by mistake.
2012-11-25 21:30:10 +01: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
Jocelyn Fiat
e01c5bec57
Reviewed the semantic of the handler context.
...
Adapted existing code to fit the new router design.
2012-09-27 15:09:41 +02:00
Jocelyn Fiat
94a91fa4aa
added missing wsf_routing_filter
2012-09-26 09:45:33 +02:00
Jocelyn Fiat
28186efbe7
Applied new ROUTER design to the whole EWF project.
2012-09-25 23:18:17 +02:00
Jocelyn Fiat
0503e63209
Minor implementation changes (feature renaming, ... )
2012-09-19 10:50:38 +02:00
Jocelyn Fiat
ace897ea2b
New ROUTER design, much simpler, less generic, easier to extend, and now one can mix uri map, uri_template map and so on.
...
Update the "tutorial" example.
2012-09-19 10:50:27 +02:00
Jocelyn Fiat
795f82d51f
added WSF_VALUE.is_empty: BOOLEAN
2012-09-10 16:28:25 +02:00
Jocelyn Fiat
0d8363aa3f
Fixed issue when applying URI_TEMPLATE result to WSF_REQUEST to populate path_parameters', now if we have table parameter for foo[]' .. we ignore any string parameter with same name `foo'
...
Also fixed issue where the encoded name were changed later, since it kept the same string reference.
Added `WSF_REQUEST.is_post_request_method: BOOLEAN' and `WSF_REQUEST.is_get_request_method: BOOLEAN' to ease app code
2012-09-10 09:35:47 +02:00
Jocelyn Fiat
153a853df5
Added `WSF_TABLE.is_empty: BOOLEAN'
...
Added `WSF_TABLE.as_array_of_string: detachable ARRAY [READABLE_STRING_32]'
2012-09-10 09:31:27 +02:00
Jocelyn Fiat
45daa731cf
Added put_expires_string (s: STRING) and put_expires_date (dt: DATE_TIME)
...
Better implementation for WSF_FILE_RESPONSE (added last modified, and other caching related info)
2012-09-10 09:27:32 +02:00
Olivier Ligot
74334e665d
[ADD] Filter: pre-process incoming data and post-process outgoing data
...
Filters are part of a filter chain, thus following the chain of responsability
design pattern.
More information are available in library/server/wsf/src/filter/README.md
2012-08-10 10:09:59 +02:00
Jocelyn Fiat
0665085eee
updated to use WSF_STRING.value instead of obsolete WSF_STRING.string
2012-06-29 10:48:21 +02:00
Jocelyn Fiat
23de980e57
added methods_head_get_post and methods_head_get
2012-06-15 10:54:53 +02:00
Jocelyn Fiat
ad5fed84ca
Fixed previous commit where nino .ecf path was empty.
2012-06-15 10:53:32 +02:00
Jocelyn Fiat
3702842337
Updated structure of EWF, applied
...
Now "nino" is under contrib/library/network/server/nino (as git merge subtree, and not anymore as submodule)
2012-06-14 13:35:08 +02:00
Jocelyn Fiat
2b730186a2
Fixing issue with HEAD and make_from_iterable
2012-06-14 12:28:52 +02:00
Jocelyn Fiat
db448001a1
Change structure of EWF, to follow better categorization
2012-06-13 22:32:17 +02:00
Jocelyn Fiat
8a58d62a7e
Adopted convention name and value or values for WSF_VALUE and descendant (WSF_STRING ...)
...
kept `key' as redirection, and also string as obsolete redirection.
Router: provide a way to pass the request methods without using manifest string, thanks to WSF_ROUTER_METHODS
so instead of using manifest array or manifest strings, just create an instance of WSF_ROUTER_METHODS
for convenience, WSF_ROUTER provides a few `methods_...' returning prebuilt WSF_ROUTER_METHODS objects
Improved code related to unicode handling in URL, and parameters (before the framework was doing too much)
2012-06-11 14:58:13 +02:00
Jocelyn Fiat
0d5011b03e
Added html encoding facility to WSF_STRING
...
Added WSF_STRING.is_empty
Improved HTML_ENCODER to be able to decode a STRING_8 or STRING_32 using general_decoded_string (s)
Improved tutorial example
Added precompilation for WSF library
Cosmetic (removed unused locals)
2012-05-30 09:36:55 +02:00
Jocelyn Fiat
445a27ddf8
Now inherit create_router ; but it is still possible to redefine it.
...
Added some wsf_reponse_message for redirection
Use "found" for the redirec_now ...
Added content to the tutorial
2012-05-28 10:54:05 +02:00
Jocelyn Fiat
171be24d2a
Better us OK status for redirection by default
2012-05-25 23:56:10 +02:00
Jocelyn Fiat
03bf467ee5
Added descriptions to WSF_RESPONSE about .send (mesg)
...
Fixed minor issues in other classes
2012-05-25 23:51:59 +02:00
Jocelyn Fiat
6cff00428b
Protected export of WSF_RESPONSE_MESSAGE.send_to
...
Added WSF_DEFAULT_RESPONSE_SERVICE
Added simple WSF_SERVICE_LAUNCHER_OPTIONS_FROM_INI class to load launch option from ini file.
Removed a few obsolete features
2012-05-25 20:17:55 +02:00
Jocelyn Fiat
00a88e98e5
Updated indexing notes
...
started tutorial
Sync
2012-05-25 17:47:43 +02:00
Berend de Boer
2ff3cff70f
Do not use 307 but 302 response
2012-05-21 17:18:12 +02:00
Jocelyn Fiat
c3c27c5027
Rather use (READABLE_)STRING_GENERAL for argument instead of _8 or _32 variant
...
Better design to set the WSF_REQUEST.path_parameters
especially handle the case where the request goes trought more than one route (could be the case when using WSF_ROUTING_HANDLER)
2012-05-14 18:12:28 +02:00