- HTTP_HEADER.string does not have the ending CRLFCRLF .. but just CRLF
- WGI_RESPONSE.write_header_text has the responsibility to handle the last blank line CRLF (separating the header from the message)
- HTTP_HEADER.string does not set anymore a default content type as text/html
- added WGI_RESPONSE.write_header_lines (ITERABLE [TUPLE [name,value: READABLE_STRING_8]] mainly as an helper method,
this way the WGI user does not have to know about the CRLF end of line
Removed many usage of READABLE_STRING_GENERAL in favor to READABLE_STRING_8
to avoid potential nasty issues in user's code
URI-template is working only with STRING_8, then changed any _GENERAL or _STRING_32 to _STRING_8
- HTTP_MIME_TYPES
- HTTP_HEADER_NAMES
- HTTP_REQUEST_METHODS
- HTTP_STATUS_CODE (already exists)
Do not set the "Status" header when using WGI_RESPONSE_BUFFER.write_header (...)
Cosmetic
Fixed implementation of REST_REQUEST_AGENT_HANDLER to avoid wrong path in inherited routine.
Allow to build a URI_TEMPLATE from another URI TEMPLATE,
this way, if later we have more attribute (status or settings) to URI_TEMPLATE,
we'll be able to change the `template' without breaking the settings
added status setting in GW_RESPONSE
added a default implementation for write_status in OUTPUT_STREAM
(it should be moved away in the future)
removed any implementation from GW_REQUEST, and put it in GW_REQUEST_IMP
as specified by http://tools.ietf.org/html/draft-gregorio-uritemplate-05
(it seems to contains some error in the spec .. or minor incoherences, to double check)
The matcher is basic, it does not handle all the details of the string builder, but that seems ok for now.
So this is really more flexible this way, and much easier to write application supporting CGI, FCGI, Nino and so on .. as demonstrated in hello_world
This is a first version, more will come later, mainly migrating from Eiffel Web Reloaded to this Eiffel Web Framework project.