Base class for handlers that need HTTP request/response layer to be remoted.
More...
#include <shibsp/handler/RemotedHandler.h>
|
| void | setAddress (const char *address) |
| | Establishes message remoting using the supplied address. More...
|
| |
| DDF | wrap (const SPRequest &request, const std::vector< std::string > *headers=nullptr, bool certs=false) const |
| | Wraps a request by creating an outgoing data flow with the data needed to remote the request information. More...
|
| |
| virtual std::pair< bool, long > | unwrap (SPRequest &request, DDF &out) const |
| | Unwraps a response by examining an incoming data flow to determine whether a response was produced by the remoted handler. More...
|
| |
| xmltooling::HTTPRequest * | getRequest (DDF &in) const |
| | Builds a new request instance around a remoted data object. More...
|
| |
| xmltooling::HTTPResponse * | getResponse (DDF &out) const |
| | Builds a new response instance around an outgoing data object. More...
|
| |
| virtual void | log (SPRequest::SPLogLevel level, const std::string &msg) const |
| | Log using handler's specific logging object. More...
|
| |
| virtual void | cleanRelayState (const Application &application, const xmltooling::HTTPRequest &request, xmltooling::HTTPResponse &response) const |
| | Prevents unused relay state from building up by cleaning old state from the client. More...
|
| |
| virtual void | preserveRelayState (const Application &application, xmltooling::HTTPResponse &response, std::string &relayState) const |
| | Implements various mechanisms to preserve RelayState, such as cookies or StorageService-backed keys. More...
|
| |
| virtual void | recoverRelayState (const Application &application, const xmltooling::HTTPRequest &request, xmltooling::HTTPResponse &response, std::string &relayState, bool clear=true) const |
| | Implements various mechanisms to recover RelayState, such as cookies or StorageService-backed keys. More...
|
| |
|
| virtual const XMLCh * | getProtocolFamily () const |
| | Returns an identifier for the protocol family associated with the handler, if any. More...
|
| |
| virtual std::pair< bool, long > | run (SPRequest &request, bool isHandler=true) const =0 |
| | Executes handler functionality as an incoming request. More...
|
| |
| virtual void | generateMetadata (opensaml::saml2md::SPSSODescriptor &role, const char *handlerURL) const |
| | Generates and/or modifies metadata reflecting the Handler. More...
|
| |
| virtual const char * | getType () const |
| | Returns the "type" of the Handler plugin. More...
|
| |
| virtual void | receive (DDF &in, std::ostream &out)=0 |
| | Remoted classes implement this method to process incoming messages. More...
|
| |
Base class for handlers that need HTTP request/response layer to be remoted.
| static void shibsp::RemotedHandler::addRemotedHeader |
( |
const char * |
header) | |
|
|
static |
Ensures that a request header will be remoted.
- Parameters
-
| header | name of request header to remote |
| xmltooling::HTTPRequest* shibsp::RemotedHandler::getRequest |
( |
DDF & |
in) | |
const |
|
protected |
Builds a new request instance around a remoted data object.
- Parameters
-
| in | the dataflow object containing the remoted request |
- Returns
- a call-specific request object based on the input, to be freed by the caller
| xmltooling::HTTPResponse* shibsp::RemotedHandler::getResponse |
( |
DDF & |
out) | |
const |
|
protected |
Builds a new response instance around an outgoing data object.
- Parameters
-
| out | the dataflow object to be returned by the caller |
- Returns
- a call-specific response object, to be freed by the caller
| void shibsp::RemotedHandler::setAddress |
( |
const char * |
address) | |
|
|
protected |
Establishes message remoting using the supplied address.
- Parameters
-
| address | a unique "address" for remote message handling |
| virtual std::pair<bool,long> shibsp::RemotedHandler::unwrap |
( |
SPRequest & |
request, |
|
|
DDF & |
out |
|
) |
| const |
|
protectedvirtual |
Unwraps a response by examining an incoming data flow to determine whether a response was produced by the remoted handler.
- Parameters
-
| request | SP request context |
| out | the dataflow object to unpack |
- Returns
- a pair containing a "request completed" indicator and a server-specific response code
| DDF shibsp::RemotedHandler::wrap |
( |
const SPRequest & |
request, |
|
|
const std::vector< std::string > * |
headers = nullptr, |
|
|
bool |
certs = false |
|
) |
| const |
|
protected |
Wraps a request by creating an outgoing data flow with the data needed to remote the request information.
- Parameters
-
| request | an SPRequest to remote |
| headers | array of additional request headers to copy to remote request |
| certs | true iff client certificates should be available for the remote request |
- Returns
- the input dataflow object
| std::string shibsp::RemotedHandler::m_address |
|
protected |
Message address for remote half.
The documentation for this class was generated from the following file: