Jocelyn Fiat
897aeb3132
WSF_REQUEST.content_type should keep only the relevant part of the content type
...
and forget about the eventual parameters (charset, name) ...
note: it is possible to query meta_string_variable ("CONTENT_TYPE")
to get the complete Content-Type header
2012-03-20 11:12:18 +01:00
Jocelyn Fiat
48acdea73c
Added HTTP_HEADER.(put|add)_content_type_with_parameters (...)
2012-03-20 11:08:52 +01:00
Jocelyn Fiat
cbaae12156
removed obsolete
2012-03-20 10:30:04 +01:00
Jocelyn Fiat
8344607eb6
Implemented WSF_RESPONSE.put_error (...) and related
...
Added WSF_RESPONSE.put_character
Renamed WGI_OUTPUT_STREAM.put_character_8 as put_character to follow style of put_string (and not put_string_8)
Refactored the WSF_DEFAULT_SERVICE_LAUNCHER
Added WSF_DEFAULT_SERVICE to be more user friendly
Splitted the wsf/default/ libraries to have wsf/connector/... and being able to handle more than one connector in the same application
2012-03-20 10:29:55 +01:00
Jocelyn Fiat
71d5dc4795
Moved mime handler classes under wsf/src/mime/
2012-03-20 08:38:38 +01:00
Jocelyn Fiat
3f0b745ecc
removed unwanted rescue clause
2012-03-19 15:20:29 +01:00
Jocelyn Fiat
3432e2d8b2
Updating EWSGI specification classes
2012-03-19 15:06:50 +01:00
Jocelyn Fiat
fea0f115a0
Removed WGI_RESPONSE.write (..)
...
Replaced any internal call to WGI_RESPONSE.write () by the associated implementation (i.e output.put_string (...) )
Added WGI_OUTPUT_STREAM.put_crlf
Renamed WSF_RESPONSE.put_response (a_message) as `send (a_message)'
WSF_RESPONSE_MESSAGE.send_to (res) is now exported only to WSF_RESPONSE
2012-03-19 14:52:12 +01:00
Jocelyn Fiat
4906345a62
Improved comment in WSF_RESPONSE.put_response (..)
...
Added WSF_REDIRECTION_RESPONSE class
2012-03-19 12:32:12 +01:00
Jocelyn Fiat
487487ad44
Added WSF_RESPONSE_HANDLER based on WSF_RESPONSE_MESSAGE
...
The descendant has to implement the function
response (ctx: C; req: WSF_REQUEST): WSF_RESPONSE_MESSAGE
Added related features and class in WSF_ROUTER to be able to use agent easily.
2012-03-19 12:04:46 +01:00
Jocelyn Fiat
ef5ba19c46
Refactored WSF_HANDLER_CONTEXT
...
- removed path_parameter
- added `item' to include WSF_REQUEST.item
- marked obsolete `parameter'
The goal is to remove confusion, remove URI_TEMPLATE specific `path_parameter'
and provide a way to use ctx.item (..) to also include meta variable, query, form, ... items
2012-03-19 10:21:29 +01:00
Jocelyn Fiat
b05ff01262
Use local variable to speed up access to `input'
2012-03-19 10:12:06 +01:00
Jocelyn Fiat
9f1940c46d
Applied wsf_extension creation, and classes moved from wsf to wsf_extension
2012-03-16 15:17:22 +01:00
Jocelyn Fiat
f69ff42564
Created wsf_extension, and moved some classes from wsf to wsf_extension
...
WSF_HANDLER_HELPER
WSF_RESOURCE_HANDLER_HELPER
WSF_HANDLER_ROUTES_RECORDER
2012-03-16 14:12:02 +01:00
Jocelyn Fiat
eb3e9f2186
applied removal of HTTP_HEADER.put_status (..)
2012-03-16 13:53:22 +01:00
Jocelyn Fiat
03b10bdc14
Removed HTTP_HEADER.put_status (...)
...
It is not recommended to send the status code as part of the HTTP Header,
so let's remove this ambiguity and do not encourage EWF user to use it
2012-03-16 13:35:52 +01:00
Jocelyn Fiat
46eb92ac37
Major renaming, adopt the WSF_ prefix for all classes under "wsf", and simplify some class names
...
Removed in WGI_INPUT_STREAM, the assertion "same_last_string_reference"
Copyright updates
2012-03-16 09:49:41 +01:00
Jocelyn Fiat
25218996e0
Fixed compilation of draft/library/server/request/rest/tests/..
...
Note the "rest" library will not be maintained since this is not REST.
2012-03-13 18:41:32 +01:00
Jocelyn Fiat
68dbbdea9f
precise that library/server/request/router is now part of "wsf" library and not anymore independant library.
2012-03-13 18:09:16 +01:00
Jocelyn Fiat
5abc79b7c3
Nino connector:
...
- fixed issue related to `ready_for_reading' now use the `try_...' variant
- for now Nino does not support persistent connection, then we have to respond with "Connection: close"
REQUEST_FILE_SYSTEM_HANDLER:
- added not_found_handler and access_denied_handler, so that the user can customize related response
WSF_REQUEST and WSF_VALUE:
- modified how uploaded file are handled, fixed various issues, and added WSF_UPLOADED_FILE (it is a WSF_VALUE)
WSF_VALUE:
- added change_name (a_name: like name)
- added url_encoded_name to other WSF_values
WSF_REQUEST:
- added `destroy' to perform end of request cleaning (such as deleting temp uploaded files)
- renamed `raw_post_data_recorded' as `raw_input_data_recorded', and related feature
- do not store the RAW_POST_DATA in meta variable anymore, but in WSF_REQUEST.raw_input_data is asked
Added WSF_HTML_PAGE_RESPONSE to help user
WSF_REPONSE.redirect_... now use "temp_redirect" as default
instead of "moved_permanently" which is specific usage
Removed many obsolete features.
2012-03-13 18:07:28 +01:00
Jocelyn Fiat
c5fe539acb
use https:// url for git submodules
2012-02-29 17:23:34 +01:00
Jocelyn Fiat
ac3e969b3c
Added assertions to catch if route mapping does not already exists
2012-02-29 11:27:46 +01:00
Jocelyn Fiat
98f2efbd68
Merging changes from Javier
...
Updated restbucksCRUD example, and related class in wsf/router
2012-02-28 09:23:09 +01:00
Jocelyn Fiat
7314e92fe6
Synchronized with nino and json library
2012-02-28 09:20:08 +01:00
Jocelyn Fiat
d621987020
Minor correction, to avoid returning 200 as status code, when the client can not connect
2012-02-16 10:32:24 +01:00
Jocelyn Fiat
e541fdcb0c
fixed compilation
2012-02-15 12:36:57 +01:00
Jocelyn Fiat
5950d768c9
sync with cURL library
2012-02-15 11:58:32 +01:00
Jocelyn Fiat
413fdaf6cd
Fixed error visitor due to recent signature changes
2012-02-15 11:33:39 +01:00
Jocelyn Fiat
9138ffedfb
renamed (add|remove)_synchronized_handler as (add|remove)_synchronization
2012-02-15 11:07:12 +01:00
Jocelyn Fiat
72cc05532c
Removed tests target from encoder(-safe).ecf
...
(now there is a tests-safe.ecf in folder tests)
2012-02-15 11:04:42 +01:00
Jocelyn Fiat
145b129b28
Fixed ERROR_HANDLER.destroy
...
Fixed and export ERROR_HANDLER.remove_synchronized_handler
Added comments
Added associated autotests
2012-02-15 11:03:30 +01:00
Jocelyn Fiat
fbec89f354
Better signature for encoders
...
Split library .ecf and the autotest .ecf
2012-02-14 18:03:42 +01:00
Jocelyn Fiat
f59d5cac32
added postcondition to ensure the body string set to the response, is the same reference
...
this is important, since sometime we just do
rep.set_body (s)
s.append_string ("..")
2012-02-14 18:02:14 +01:00
Jocelyn Fiat
4bb8a71c1b
Added DEBUG_OUTPUT to ERROR, since this is convenient during debugging
2012-02-14 18:01:17 +01:00
Jocelyn Fiat
dd6b74326e
Added notion of synchronization between error handler
...
this is convenient to integrate two components using their own ERROR_HANDLER (not sharing the same object)
2012-02-14 12:57:01 +01:00
Jocelyn Fiat
e52cd6b352
use WSF_PAGE_RESPONSE, instead of reimplementing it ourself
2012-02-14 10:20:15 +01:00
Jocelyn Fiat
537bd8241f
added a JSON encoder test case
2012-02-13 14:38:13 +01:00
Jocelyn Fiat
040c1d1c10
Merge pull request #9 from oligot/fix-libfcgi-location
...
[FIX] libfcgi.so location
2012-02-13 03:21:29 -08:00
Jocelyn Fiat
6cf35e90c6
added a case in test_json_encoder
2012-02-08 21:36:49 +01:00
Jocelyn Fiat
ca3a520bb9
fixed http_client tests
2012-02-08 16:36:54 +01:00
Jocelyn Fiat
3a9b67c8ad
Better code to test similar functions but with chunked input
2012-02-07 16:05:19 +01:00
Jocelyn Fiat
e21da4a591
Improved the WSF_PAGE_RESPONSE to be more flexible and allow to change some values as expected.
2012-02-07 15:49:02 +01:00
Jocelyn Fiat
69bc4d568c
Added support for chunked input data (see Transfer-Encoding: chunked)
2012-02-07 15:47:55 +01:00
Jocelyn Fiat
cf8d25c4e5
Added HTTP_HEADER.append_header_object and append_array.
...
This is helpful to "merge" two HTTP_HEADER and provide user friendly features
2012-02-07 15:45:44 +01:00
Jocelyn Fiat
2b9ca86501
Added proxy, at least to make it is possible to use http://fiddler2.com/ to inspect the traffic.
2012-02-07 15:44:45 +01:00
Jocelyn Fiat
2f43660628
Merge branch 'master' of https://github.com/jvelilla/Eiffel-Web-Framework
2012-02-07 15:13:59 +01:00
Jocelyn Fiat
d8476edf36
Fixed wrong code for postcondition on HTTP_HEADER.string
...
Patch provided by Paul-G.Crismer
2012-02-01 16:53:24 +01:00
Jocelyn Fiat
67e6b460b3
removed unwanted set_status_code, since we already use put_header to set the status code.
2012-02-01 16:05:30 +01:00
Jocelyn Fiat
962154fc81
Eventually fixing trouble with c_strlen being over capacity
...
(added this for testing, and while waiting a fix from EiffelcURL)
2012-02-01 11:57:42 +01:00
Jocelyn Fiat
645b35590b
Improved redirect_now_custom to allow custom status code, custom header, and custom content
2012-02-01 10:57:52 +01:00
Jocelyn Fiat
a1354136fa
Fixed usage of lst[] in web form, now we are url-decoding the name because the [] could escaped...
...
Fixed bad code for assertion related to variable url-encoded name
2012-01-31 17:57:59 +01:00
Jocelyn Fiat
945ef79857
added REQUEST_HANDLER_CONTEXT.string_array_path_parameter (...) to help user handling list/array parameters
...
fixed postcondition WSF_REQUEST.set_meta_string_variable ...
2012-01-31 12:12:41 +01:00
Jocelyn Fiat
2c4df29877
Make sure to return a response
...
Added precondition to check URI_TEMPLATE is valid
2012-01-25 16:27:22 +01:00
Jocelyn Fiat
e6687c7791
Fixed wrong assertion, status_committed instead of status_set
2012-01-24 16:47:12 +01:00
Jocelyn Fiat
754d3f670c
Fixed issue with WSF_FILE_RESPONSE not setting the status code
...
Added Last-Modified
2012-01-23 18:20:25 +01:00
Jocelyn Fiat
8e420de8ec
Fixed wrong code for postcondition in unset_orig_path_info
2012-01-23 15:32:11 +01:00
Jocelyn Fiat
6dc1c0d2b0
Removed most of the "retry" in rescue clauses, since it was hidding critical issue.
...
This should be the choice of the application to "retry" on exception, otherwise let the framework handle this in the lower part.
Better handling of response termination (alias commit)
Added the notion of "status_committed"
2012-01-23 15:31:34 +01:00
Jocelyn Fiat
80d68699b1
added "conversion" to ease the use of HTTP_HEADER
2012-01-23 15:28:06 +01:00
Jocelyn Fiat
fcdf4e456e
fixed compilation (was not up to date with tests.ecf)
2012-01-20 20:04:56 +01:00
Jocelyn Fiat
c92c2a91b4
Corrected remaining issue related to recent addition of REQUEST_ROUTER.make_with_base_url
...
And applied removal of format_name and format_id, and replaced by accepted_format_name, ...
2012-01-20 18:55:03 +01:00
Jocelyn Fiat
da9fa4ecc2
Do not add again ctx.headers, since it is already "imported" during the creation of Current request
...
(see HTTP_CLIENT_REQUEST.make)
2012-01-20 15:37:04 +01:00
Jocelyn Fiat
abdd68863d
Removed any "format" related query from router lib, this is too application specific to be there.
...
Better handling of base_url for REQUEST_ROUTER
2012-01-20 15:35:03 +01:00
Jocelyn Fiat
83a8ad3879
separate library .ecf and tests .ecf
...
merged tests .ecf for draft 05 and current implementation
2012-01-19 14:34:04 +01:00
Jocelyn Fiat
1b55b09b64
Fixed WSF_REQUEST.script_url (..) for clean path
...
Added related autotests
2012-01-19 10:25:53 +01:00
Jocelyn Fiat
4cf3393a13
Don't forget to put Content-Length: 0 for redirect without any content
2012-01-17 17:37:26 +01:00
Jocelyn Fiat
60574ee85f
REQUEST_ROUTER now inherit from ITERABLE [..]
2012-01-17 16:35:52 +01:00
Jocelyn Fiat
7a6c51e47e
Send the Status code, as an header line Status: code reason
2012-01-17 16:34:48 +01:00
Jocelyn Fiat
d8c420c4b7
use READABLE_STRING_8 instead of STRING_8
2012-01-17 16:33:40 +01:00
Jocelyn Fiat
790aa40591
According to http://www.fastcgi.com/docs/faq.html#httpstatus
...
send the Status code, as an header line Status: code reason
2012-01-17 13:49:04 +01:00
Jocelyn Fiat
e506397406
Do not send any Status line back to the FastCGI client
2012-01-16 13:49:38 +01:00
Jocelyn Fiat
434f031680
Synchronized with ejson library
...
Cleaned JSON_ENCODER
2012-01-13 19:04:26 +01:00
Jocelyn Fiat
e36533bc99
Added JSON_ENCODER
2012-01-12 10:38:43 +01:00
Jocelyn Fiat
d90ecbd5fe
removed obsolete call on WSF_RESPONSE.write_..' by using the up-to-date WSF_RESPONSE.put_..'
2012-01-09 10:21:35 +01:00
Jocelyn Fiat
20281bc922
HTTP_HEADER: - added put_last_modified
...
- added RFC1123 http date format helper
- added put_cookie_with_expiration_date as DATE_TIME
REQUEST: added `execution_variable' to provide a way to keep object attached to the request
and indexed by a string. A typical usage is a SESSION object
2012-01-06 18:27:52 +01:00
Jocelyn Fiat
83346c92a7
added REQUEST.execution_variables ... to provide a solution to store data during request execution
...
could be used for SESSION, or any "shared" data inside the same Request
2011-12-18 12:57:24 +01:00
Jocelyn Fiat
6b50ab8c55
applied write_ as put_ renaming to examples
2011-12-18 12:55:42 +01:00
Jocelyn Fiat
c8efa04147
Use put_ instead of write_
2011-12-15 23:52:53 +01:00
Jocelyn Fiat
37860f43b5
various minor changes
2011-12-15 23:38:34 +01:00
Jocelyn Fiat
65a998cec3
use /usr/lib/libfcgi.so instead of /usr/local/lib/libfcgi.so
2011-12-15 20:10:31 +01:00
Jocelyn Fiat
7207a021be
Applied renaming from write_ to put_
2011-12-15 19:34:20 +01:00
Jocelyn Fiat
32373addfa
Renamed write_ feature as put_
2011-12-15 19:04:26 +01:00
Jocelyn Fiat
e16f03b1c2
Fixed stupid mistake in {WGI_NINO_INPUT_SREEAM}.end_of_input
2011-12-15 15:36:47 +01:00
Jocelyn Fiat
1698a06ea0
Fixed typo and missing uri_template reference for draft rest library
2011-12-15 14:40:43 +01:00
Jocelyn Fiat
da3594db50
Now the 'router' library is part of 'wsf'
...
Move hello_routed_world under tests/dev since it was not really an example, but more a dev workspace/test
2011-12-15 14:10:52 +01:00
Jocelyn Fiat
bfa620eee3
Made DEFAULT_SERVICE_LAUNCHER more flexible for the user.
2011-12-15 13:30:19 +01:00
Jocelyn Fiat
b6784ee35c
Use port 9090 for restbuck server
...
mainly to avoid using 80 or 8080 which are often already used (by current webserver, or even skype, or jenkins, or ...)
2011-12-14 16:34:01 +01:00
Jocelyn Fiat
ab5b43d8ef
Forgot to add make_and_launch_with_options to the creation procedures
2011-12-14 15:04:29 +01:00
Jocelyn Fiat
c7366615cf
Added DEFAULT_SERVICE_LAUNCHER.make_and_launch_with_options
...
Added WSF_RESPONSE.redirect_now_with_content (...)
Updated hello_routed_world .. mainly example use to test/develop... not really a nice example
2011-12-14 14:44:06 +01:00
Jocelyn Fiat
b60c41ee1b
Updated readme on how to get source code
2011-12-13 11:43:24 +01:00
Jocelyn Fiat
f9dfeb0034
added head and bottom value in WSF_FILE_RESPONSE, to enable the user to set a head and bottom part easily
2011-12-13 10:35:49 +01:00
Jocelyn Fiat
5e35bc59a9
avoid infinite rescue due to internal error or user code not dealing well with socket disconnection
2011-12-12 21:19:45 +01:00
Jocelyn Fiat
2ed6d92e53
Removed dotnet target for now
2011-12-12 21:18:35 +01:00
Jocelyn Fiat
33d3071cad
Merge branch 'master' of github.com:Eiffel-World/Eiffel-Web-Framework
2011-12-12 18:57:09 +01:00
Jocelyn Fiat
35dde23976
Fixed http_client autotest code
2011-12-12 18:50:40 +01:00
Jocelyn Fiat
390c05b056
Break inheritance from WGI_RESPONSE, since it is not flexible for future improvement.
2011-12-12 18:24:46 +01:00
Jocelyn Fiat
011f8746d6
Fixed HTTP client callers
2011-12-12 18:17:39 +01:00
Jocelyn Fiat
0335226e8b
Renamed DEFAULT_SERVICE as DEFAULT_SERVICE_LAUNCHER
2011-12-12 18:17:27 +01:00
Jocelyn Fiat
68e4ac9a8f
Fixed WSF_FILE_RESPONSE
...
and added WSF_FORCE_DOWNLOAD_RESPONSE
2011-12-12 16:20:06 +01:00
Jocelyn Fiat
f6b293d4ae
Merge changes from Javier
...
- update on RESTbuck examples
- new example
- fixed bad typo in WSF_REQUEST
Reverted some changes such as
- http_client_response: keep the headers as a list to handle multiple message-value with same message-name
Fixed simple and simple_file example
Improved HTTP_HEADER
Changed libcurl implementation for http client
- now the header from the context really overwrite any of the session headers
- better design which is more strict, and remove any doubt about context's header usage
2011-12-12 16:03:38 +01:00
Jocelyn Fiat
89572b4f33
Removed any (put|write)_file_content from the WSF_ or WGI_ OUTPUT classes
...
Now DEFAULT_SERVICE has to be created instead of inherited.
- This seems to be better for new user, and this avoid potential conflict and difference when inheriting between the various DEFAULT_SERVICE implementation.
- remember that DEFAULT_SERVICE, is mainly to help the user to build its very first service.
Use READABLE_STRING_8 as argument whenever it is possible.
Added WSF_RESPONSE_MESSAGE, and WSF_RESPONSE.put_response (a_response_message)
Now WSF_RESPONSE inherit from WGI_RESPONSE
2011-12-12 11:16:15 +01:00