#include <shibsp/SPRequest.h>
Public Types | |
enum | SPLogLevel { SPDebug, SPInfo, SPWarn, SPError, SPCrit } |
Portable logging levels. More... | |
Public Member Functions | |
virtual const ServiceProvider & | getServiceProvider () const =0 |
Returns the locked ServiceProvider processing the request. | |
virtual RequestMapper::Settings | getRequestSettings () const =0 |
Returns RequestMapper Settings associated with the request, guaranteed to be valid for the request's duration. | |
virtual const Application & | getApplication () const =0 |
Returns the Application governing the request. | |
virtual Session * | getSession (bool checkTimeout=true, bool ignoreAddress=false, bool cache=true)=0 |
Returns a locked Session associated with the request. | |
virtual const char * | getHandlerURL (const char *resource=nullptr) const =0 |
Returns the effective base Handler URL for a resource, or the current request URL. | |
virtual std::string | getSecureHeader (const char *name) const |
Returns a non-spoofable request header value, if possible. | |
virtual void | clearHeader (const char *rawname, const char *cginame)=0 |
Ensures no value exists for a request header. | |
virtual void | setHeader (const char *name, const char *value)=0 |
Sets a value for a request header. | |
virtual void | setRemoteUser (const char *user)=0 |
Establish REMOTE_USER identity in request. | |
virtual void | setAuthType (const char *authtype) |
Establish AUTH_TYPE for request. | |
virtual void | log (SPLogLevel level, const std::string &msg) const =0 |
Log to native server environment. | |
virtual bool | isPriorityEnabled (SPLogLevel level) const =0 |
Test logging level. | |
virtual long | returnDecline ()=0 |
Indicates that processing was declined, meaning no action is required during this phase of processing. | |
virtual long | returnOK ()=0 |
Indicates that processing was completed. |
To supply information from the surrounding web server environment, a shim must be supplied in the form of this interface to adapt the library to different proprietary server APIs.
This interface need not be threadsafe.
Portable logging levels.
virtual const ServiceProvider& shibsp::SPRequest::getServiceProvider | ( | ) | const [pure virtual] |
Returns the locked ServiceProvider processing the request.
Implemented in shibsp::AbstractSPRequest.
virtual RequestMapper::Settings shibsp::SPRequest::getRequestSettings | ( | ) | const [pure virtual] |
Returns RequestMapper Settings associated with the request, guaranteed to be valid for the request's duration.
Implemented in shibsp::AbstractSPRequest.
virtual const Application& shibsp::SPRequest::getApplication | ( | ) | const [pure virtual] |
Returns the Application governing the request.
Implemented in shibsp::AbstractSPRequest.
virtual Session* shibsp::SPRequest::getSession | ( | bool | checkTimeout = true , |
|
bool | ignoreAddress = false , |
|||
bool | cache = true | |||
) | [pure virtual] |
Returns a locked Session associated with the request.
checkTimeout | true iff the last-used timestamp should be updated and any timeout policy enforced | |
ignoreAddress | true iff all address checking should be ignored, regardless of policy | |
cache | true iff the request should hold the Session lock itself and unlock during cleanup |
Implemented in shibsp::AbstractSPRequest.
virtual const char* shibsp::SPRequest::getHandlerURL | ( | const char * | resource = nullptr |
) | const [pure virtual] |
Returns the effective base Handler URL for a resource, or the current request URL.
resource | resource URL to compute handler for |
Implemented in shibsp::AbstractSPRequest.
virtual std::string shibsp::SPRequest::getSecureHeader | ( | const char * | name | ) | const [virtual] |
Returns a non-spoofable request header value, if possible.
Platforms that support environment export can redirect header lookups by overriding this method.
name | the name of the secure header to return |
virtual void shibsp::SPRequest::clearHeader | ( | const char * | rawname, | |
const char * | cginame | |||
) | [pure virtual] |
Ensures no value exists for a request header.
rawname | raw name of header to clear | |
cginame | CGI-equivalent name of header |
virtual void shibsp::SPRequest::setHeader | ( | const char * | name, | |
const char * | value | |||
) | [pure virtual] |
Sets a value for a request header.
name | name of header to set | |
value | value to set |
virtual void shibsp::SPRequest::setRemoteUser | ( | const char * | user | ) | [pure virtual] |
Establish REMOTE_USER identity in request.
user | REMOTE_USER value to set or nullptr to clear |
virtual void shibsp::SPRequest::setAuthType | ( | const char * | authtype | ) | [virtual] |
Establish AUTH_TYPE for request.
authtype | AUTH_TYPE value to set or nullptr to clear |
virtual void shibsp::SPRequest::log | ( | SPLogLevel | level, | |
const std::string & | msg | |||
) | const [pure virtual] |
Log to native server environment.
level | logging level | |
msg | message to log |
Implemented in shibsp::AbstractSPRequest.
virtual bool shibsp::SPRequest::isPriorityEnabled | ( | SPLogLevel | level | ) | const [pure virtual] |
Test logging level.
level | logging level |
Implemented in shibsp::AbstractSPRequest.
virtual long shibsp::SPRequest::returnDecline | ( | ) | [pure virtual] |
Indicates that processing was declined, meaning no action is required during this phase of processing.
virtual long shibsp::SPRequest::returnOK | ( | ) | [pure virtual] |
Indicates that processing was completed.