abstract class that all HTTP dedicated socket handler objects must inherit from
More...
|
| | constructor (*AbstractAuthenticator auth) |
| | create the object optionally with the given AbstractAuthenticator More...
|
| |
| abstract hash | handleRequest (hash cx, hash hdr, *data b) |
| | called by the HTTP server to handle incoming HTTP requests More...
|
| |
| | start (softstring lid, hash cx, hash hdr, Socket s) |
| | called from the HTTP server after the handleRequest() method indicates that a dedicated connection should be established More...
|
| |
| | stop (softstring lid) |
| | called from the HTTP server when the socket should be closed due to an HTTP listener being stopped; the start() method for all connections on the particular listener should return as soon as possible after this method is called More...
|
| |
| | stop () |
| | called from the HTTP server when the socket should be closed due to an external request; the start() method should return as soon as possible after this method is called More...
|
| |
Public Member Functions inherited from HttpServer::AbstractHttpRequestHandler |
| | constructor (*AbstractAuthenticator n_auth, softbool n_stream=False) |
| | create the object optionally with the given AbstractAuthenticator More...
|
| |
|
*data | getMessageBody (Socket s, hash hdr, *data body, bool decode=True) |
| | optionally retrieves and post-processes any message body
|
| |
| hash< HttpResponseInfo > | handleRequest (hash cx, hash hdr, *data body) |
| | will be called when a request is received that should be directed to the handler More...
|
| |
|
hash< HttpResponseInfo > | handleRequest (HttpListenerInterface listener, Socket s, hash cx, hash hdr, *data body) |
| | top-level request handling method
|
| |
|
bool | isPersistent () |
| | returns True if the current connection is persistent, False if not
|
| |
| string | maskData (string msg) |
| | this method can be used to mask data in debug messages More...
|
| |
|
| notifyClosed (*code c) |
| | calls the argument when the persistent connection is closed
|
| |
|
nothing | persistentClosed () |
| | called externally when a persistent connection is closed
|
| |
| | restoreThreadLocalData (*hash data) |
| | called after handleRequest() with any data returned from saveThreadData() More...
|
| |
| *hash | saveThreadLocalData () |
| | called before handleRequest() any data returned here will be given to restoreThreadLocalData() after the handleRequest() call More...
|
| |
|
| setPersistent (bool p=True) |
| | called externally to notify the handler that the connection will be persistent
|
| |
|
Static Public Member Functions inherited from HttpServer::AbstractHttpRequestHandler |
|
static data | decodeBody (string ce, binary body, *string enc) |
| | decodes a message body with content-encoding
|
| |
|
static binary | encodeBody (string ce, data body) |
| | encodes a message body with content-encoding
|
| |
| static *string | getLogMessage (hash cx, hash api, reference params, *reference< string > args) |
| | helper method for handling log messages More...
|
| |
|
static hash< HttpResponseInfo > | make400 (string fmt) |
| | creates a hash for an HTTP 400 error response with the response message body as a string
|
| |
|
static hash< HttpResponseInfo > | make400 (hash hdr, string fmt) |
| | creates a hash for an HTTP 400 error response with the response message body as a string
|
| |
|
static hash< HttpResponseInfo > | make501 (string fmt) |
| | creates a hash for an HTTP 501 error response with the response message body as a string
|
| |
|
static hash< HttpResponseInfo > | make501 (hash hdr, string fmt) |
| | creates a hash for an HTTP 501 error response with the response message body as a string
|
| |
|
static hash< HttpResponseInfo > | makeResponse (int code, string fmt) |
| | creates a hash for an HTTP response with the response code and the response message body as a formatted string
|
| |
|
static hash< HttpResponseInfo > | makeResponse (hash hdr, int code, string fmt) |
| | creates a hash for an HTTP response with the response code and the response message body as a formatted string
|
| |
|
static hash< HttpResponseInfo > | makeResponse (int code, *data body, *hash hdr) |
| | creates a hash for an HTTP response with the response code and a literal response message body
|
| |
|
static hash< HttpResponseInfo > | redirect (hash cx, hash hdr, string path) |
| | generates a redirect hash for the given path
|
| |
|
static | staticNotificationCleanup () |
| | removes the thread-local data key in case the object is destroyed in another thread
|
| |
|
static | staticPersistenceCleanup () |
| | removes the thread-local data key in case the object is destroyed in another thread
|
| |
Public Attributes inherited from HttpServer::AbstractHttpRequestHandler |
|
*AbstractAuthenticator | auth |
| | the optional AbstractAuthenticator for requests to this handler
|
| |
|
bool | decompress = True |
| | if POSTed data should be decompressed automatically if there is content-encoding
|
| |
|
bool | decompress_to_string = True |
| | if automatically decompressed POSTed data should be converted to a string (if False, then it will be decompressed to a binary)
|
| |
|
const | NotificationThreadKey = "_AHRH_pc" |
| | thread-local key string for notification callbacks
|
| |
|
const | PersistenceThreadKey = "_AHRH_p" |
| | thread-local key string for the persistent flag
|
| |
|
bool | stream |
| | if the handler supports streaming requests/responses with chunked data
|
| |
|
timeout | timeout_ms = HttpServer::DefaultTimeout |
| | send and receive socket timeout in milliseconds
|
| |
abstract class that all HTTP dedicated socket handler objects must inherit from
reimplement at least handleRequest() and startImpl() in subclasses