shibboleth-3.0.1
|
Pluggable runtime functionality that handles initiating logout. More...
#include <shibsp/handler/LogoutInitiator.h>
Public Member Functions | |
const char * | getType () const |
Returns the "type" of the Handler plugin. More... | |
![]() | |
std::pair< bool, long > | run (SPRequest &request, bool isHandler=true) const |
The base method will iteratively attempt front-channel notification of logout of the current session, and after the final round trip will perform back-channel notification. More... | |
void | receive (DDF &in, std::ostream &out) |
A remoted procedure that will perform any necessary back-channel notifications. More... | |
const char * | getEventType () const |
Get the type of event, as input to error handling in response to errors raised by this handler. More... | |
![]() | |
virtual const XMLCh * | getProtocolFamily () const |
Returns an identifier for the protocol family associated with the handler, if any. More... | |
virtual void | generateMetadata (opensaml::saml2md::SPSSODescriptor &role, const char *handlerURL) const |
Generates and/or modifies metadata reflecting the Handler. More... | |
![]() | |
virtual const PropertySet * | getParent () const =0 |
Returns parent of this PropertySet, if any. More... | |
virtual void | setParent (const PropertySet *parent)=0 |
Establishes a "parent" PropertySet to supply inherited settings. More... | |
virtual std::pair< bool, bool > | getBool (const char *name, const char *ns=nullptr) const =0 |
Returns a boolean-valued property. More... | |
virtual std::pair< bool, const char * > | getString (const char *name, const char *ns=nullptr) const =0 |
Returns a string-valued property. More... | |
virtual std::pair< bool, const XMLCh * > | getXMLString (const char *name, const char *ns=nullptr) const =0 |
Returns a Unicode string-valued property. More... | |
virtual std::pair< bool, unsigned int > | getUnsignedInt (const char *name, const char *ns=nullptr) const =0 |
Returns an unsigned integer-valued property. More... | |
virtual std::pair< bool, int > | getInt (const char *name, const char *ns=nullptr) const =0 |
Returns an integer-valued property. More... | |
virtual const PropertySet * | getPropertySet (const char *name, const char *ns=shibspconstants::ASCII_SHIBSPCONFIG_NS) const =0 |
Returns a nested property set. More... | |
virtual const xercesc::DOMElement * | getElement () const =0 |
Returns a DOM element representing the property container, if any. More... | |
Additional Inherited Members | |
![]() | |
static void | addRemotedHeader (const char *header) |
Ensures that a request header will be remoted. More... | |
![]() | |
std::pair< bool, long > | notifyFrontChannel (const Application &application, const xmltooling::HTTPRequest &request, xmltooling::HTTPResponse &response, const std::map< std::string, std::string > *params=nullptr) const |
Perform front-channel logout notifications for an Application. More... | |
bool | notifyBackChannel (const Application &application, const char *requestURL, const std::vector< std::string > &sessions, bool local) const |
Perform back-channel logout notifications for an Application. More... | |
std::pair< bool, long > | sendLogoutPage (const Application &application, const xmltooling::HTTPRequest &request, xmltooling::HTTPResponse &response, const char *type) const |
Sends a response template to the user agent informing it of the results of a logout attempt. More... | |
virtual LogoutEvent * | newLogoutEvent (const Application &application, const xmltooling::HTTPRequest *request=nullptr, const Session *session=nullptr) const |
Creates a new LogoutEvent for the event log. More... | |
![]() | |
void | setAddress (const char *address) |
Establishes message remoting using the supplied address. More... | |
virtual DDF | send (const SPRequest &request, DDF &in) const |
Send a remoted message and return the response. 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... | |
![]() | |
bool | m_initiator |
Flag indicating whether the subclass is acting as a LogoutInitiator. More... | |
std::vector< std::string > | m_preserve |
Array of query string parameters to preserve across front-channel notifications, if present. More... | |
![]() | |
std::string | m_address |
Message address for remote half. More... | |
Pluggable runtime functionality that handles initiating logout.
|
virtual |