Abstract base for SPRequest implementations.
More...
#include <shibsp/AbstractSPRequest.h>
|
const ServiceProvider & | getServiceProvider () const |
| Returns the locked ServiceProvider processing the request. More...
|
|
RequestMapper::Settings | getRequestSettings () const |
| Returns RequestMapper Settings associated with the request, guaranteed to be valid for the request's duration. More...
|
|
const Application & | getApplication () const |
| Returns the Application governing the request. More...
|
|
Session * | getSession (bool checkTimeout=true, bool ignoreAddress=false, bool cache=true) |
| Returns a locked Session associated with the request. More...
|
|
const char * | getRequestURI () const |
|
const char * | getRequestURL () const |
|
std::string | getRemoteAddr () const |
|
const char * | getParameter (const char *name) const |
|
std::vector< const char * >
::size_type | getParameters (const char *name, std::vector< const char * > &values) const |
|
const char * | getHandlerURL (const char *resource=nullptr) const |
| Returns the effective base Handler URL for a resource, or the current request URL. More...
|
|
std::string | getSecureHeader (const char *name) const |
| Returns a non-spoofable request header value, if possible. More...
|
|
void | setAuthType (const char *authtype) |
| Establish AUTH_TYPE for request. More...
|
|
void | log (SPLogLevel level, const std::string &msg) const |
| Log to native server environment. More...
|
|
bool | isPriorityEnabled (SPLogLevel level) const |
| Test logging level. More...
|
|
virtual void | clearHeader (const char *rawname, const char *cginame)=0 |
| Ensures no value exists for a request header. More...
|
|
virtual void | setHeader (const char *name, const char *value)=0 |
| Sets a value for a request header. More...
|
|
virtual void | setRemoteUser (const char *user)=0 |
| Establish REMOTE_USER identity in request. More...
|
|
virtual long | returnDecline ()=0 |
| Indicates that processing was declined, meaning no action is required during this phase of processing. More...
|
|
virtual long | returnOK ()=0 |
| Indicates that processing was completed. More...
|
|
|
enum | SPLogLevel {
SPDebug,
SPInfo,
SPWarn,
SPError,
SPCrit
} |
| Portable logging levels. More...
|
|
Abstract base for SPRequest implementations.
shibsp::AbstractSPRequest::AbstractSPRequest |
( |
const char * |
category | ) |
|
|
protected |
Constructor.
- Parameters
-
category | logging category to use |
const Application& shibsp::AbstractSPRequest::getApplication |
( |
| ) |
const |
|
virtual |
const char* shibsp::AbstractSPRequest::getHandlerURL |
( |
const char * |
resource = nullptr | ) |
const |
|
virtual |
Returns the effective base Handler URL for a resource, or the current request URL.
- Parameters
-
resource | resource URL to compute handler for |
- Returns
- base location of handler
Implements shibsp::SPRequest.
Returns RequestMapper Settings associated with the request, guaranteed to be valid for the request's duration.
- Returns
- copy of settings
Implements shibsp::SPRequest.
std::string shibsp::AbstractSPRequest::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.
- Parameters
-
name | the name of the secure header to return |
- Returns
- the header's value, or an empty string
Implements shibsp::SPRequest.
const ServiceProvider& shibsp::AbstractSPRequest::getServiceProvider |
( |
| ) |
const |
|
virtual |
Session* shibsp::AbstractSPRequest::getSession |
( |
bool |
checkTimeout = true , |
|
|
bool |
ignoreAddress = false , |
|
|
bool |
cache = true |
|
) |
| |
|
virtual |
Returns a locked Session associated with the request.
- Parameters
-
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 |
- Returns
- pointer to Session, or nullptr
Implements shibsp::SPRequest.
bool shibsp::AbstractSPRequest::isPriorityEnabled |
( |
SPLogLevel |
level | ) |
const |
|
virtual |
Test logging level.
- Parameters
-
- Returns
- true iff logging level is enabled
Implements shibsp::SPRequest.
void shibsp::AbstractSPRequest::log |
( |
SPLogLevel |
level, |
|
|
const std::string & |
msg |
|
) |
| const |
|
virtual |
Log to native server environment.
- Parameters
-
level | logging level |
msg | message to log |
Implements shibsp::SPRequest.
void shibsp::AbstractSPRequest::setAuthType |
( |
const char * |
authtype | ) |
|
|
virtual |
Establish AUTH_TYPE for request.
- Parameters
-
authtype | AUTH_TYPE value to set or nullptr to clear |
Implements shibsp::SPRequest.
void shibsp::AbstractSPRequest::setRequestURI |
( |
const char * |
uri | ) |
|
|
protected |
Stores a normalized request URI to ensure it contains no %-encoded characters or other undesirable artifacts.
- Parameters
-
uri | the request URI as obtained from the client |
The documentation for this class was generated from the following file: