xmltooling 1.5.6

- Main Page
- Related Pages
- Namespaces
- Classes
- Files

- Class List
- Class Hierarchy
- Class Members

Public Member Functions | Static Public Member Functions | List of all members
xmltooling::GenericRequest Class Referenceabstract

Interface to generic protocol requests that transport XML messages. More...

`#include <xmltooling/io/GenericRequest.h>`

Inheritance diagram for xmltooling::GenericRequest:

## Public Member Functions
virtual const char * | getScheme () const =0
| Returns the URL scheme of the request (http, https, ftp, ldap, etc.) More...
virtual bool | isSecure () const =0
| Returns true iff the request is over a confidential channel. More...
virtual const char * | getHostname () const =0
| Returns hostname of service that received request. More...
virtual int | getPort () const =0
| Returns incoming port. More...
virtual bool | isDefaultPort () const
| Returns true iff the request port is the default port for the request protocol. More...
virtual std::string | getContentType () const =0
| Returns the MIME type of the request, if known. More...
virtual long | getContentLength () const =0
| Returns the length of the request body, if known. More...
virtual const char * | getRequestBody () const =0
| Returns the raw request body. More...
virtual const char * | getParameter (const char *name) const =0
| Returns a decoded named parameter value from the request. More...
virtual std::vector< const char * >::size_type | getParameters (const char *name, std::vector< const char * > &values) const =0
| Returns all of the decoded values of a named parameter from the request. More...
virtual std::string | getRemoteUser () const =0
| Returns the transport-authenticated identity associated with the request, if authentication is solely handled by the transport. More...
virtual std::string | getAuthType () const
| Gets the authentication type associated with the request. More...
virtual std::string | getRemoteAddr () const =0
| Returns the IP address of the client. More...
virtual const std::vector< XSECCryptoX509 * > & | getClientCertificates () const =0
| Returns the chain of certificates sent by the client. More...
virtual void | absolutize (std::string &url) const
| Converts a relative URL into an absolute one based on the properties of the request. More...
virtual std::string | getLanguageRange () const
| Returns a language range to use in selecting language-specific content for this request. More...
bool | startLangMatching () const
| Initializes the language matching process; call this method to begin the matching process by calling the matchLang method. More...
bool | continueLangMatching () const
| Continues the language matching process; additional calls to matchLang can be done as long as this method returns true. More...
bool | matchLang (const XMLCh *tag) const
| Matches a language tag against the currently active range. More...

## Static Public Member Functions
static void | setLangDefaults (bool langFromClient, const XMLCh *defaultRange)
| Establish default handling of language ranges. More...

## Detailed Description

Interface to generic protocol requests that transport XML messages.

This interface need not be threadsafe.

## Member Function Documentation

virtual void xmltooling::GenericRequest::absolutize | ( | std::string & | url | ) | const
| virtual

Converts a relative URL into an absolute one based on the properties of the request.

Parameters

  url | input URL to convert, will be modified in place

bool xmltooling::GenericRequest::continueLangMatching | ( |  | ) | const

Continues the language matching process; additional calls to matchLang can be done as long as this method returns true.

The language matching process is not thread-safe and must be externally syncronized.

Returns
  true iff more ranges are available to match against

virtual std::string xmltooling::GenericRequest::getAuthType | ( |  | ) | const
| inline virtual

Gets the authentication type associated with the request.

Returns
  the authentication type or nullptr

virtual const std::vector<XSECCryptoX509*>& xmltooling::GenericRequest::getClientCertificates | ( |  | ) | const
| pure virtual

Returns the chain of certificates sent by the client.

They are not guaranteed to be valid according to any particular definition.

Returns
  the client's certificate chain

virtual long xmltooling::GenericRequest::getContentLength | ( |  | ) | const
| pure virtual

Returns the length of the request body, if known.

Returns
  the content length, or -1 if unknown

virtual std::string xmltooling::GenericRequest::getContentType | ( |  | ) | const
| pure virtual

Returns the MIME type of the request, if known.

Returns
  the MIME type, or an empty string

virtual const char* xmltooling::GenericRequest::getHostname | ( |  | ) | const
| pure virtual

Returns hostname of service that received request.

Returns
  hostname of service

virtual std::string xmltooling::GenericRequest::getLanguageRange | ( |  | ) | const
| inline virtual

Returns a language range to use in selecting language-specific content for this request.

The syntax is that of the HTTP 1.1 Accept-Language header, even if the underlying request is not HTTP.

Returns
  an HTTP 1.1 syntax language range specifier

Reimplemented in xmltooling::HTTPRequest.

virtual const char* xmltooling::GenericRequest::getParameter | ( | const char * | name | ) | const
| pure virtual

Returns a decoded named parameter value from the request.

If a parameter has multiple values, only one will be returned.

Parameters

  name | the name of the parameter to return

Returns
  a single parameter value or nullptr

virtual std::vector<const char*>::size_type xmltooling::GenericRequest::getParameters | ( | const char * | name,
|  | std::vector< const char * > & | values
| ) |  | const
| pure virtual

Returns all of the decoded values of a named parameter from the request.

All values found will be returned.

Parameters

  name | the name of the parameter to return
  values | a vector in which to return pointers to the decoded values

Returns
  the number of values returned

virtual int xmltooling::GenericRequest::getPort | ( |  | ) | const
| pure virtual

Returns incoming port.

Returns
  incoming port

virtual std::string xmltooling::GenericRequest::getRemoteAddr | ( |  | ) | const
| pure virtual

Returns the IP address of the client.

Returns
  the client's IP address

virtual std::string xmltooling::GenericRequest::getRemoteUser | ( |  | ) | const
| pure virtual

Returns the transport-authenticated identity associated with the request, if authentication is solely handled by the transport.

Returns
  the authenticated username or an empty string

virtual const char* xmltooling::GenericRequest::getRequestBody | ( |  | ) | const
| pure virtual

Returns the raw request body.

Returns
  the request body, or nullptr

virtual const char* xmltooling::GenericRequest::getScheme | ( |  | ) | const
| pure virtual

Returns the URL scheme of the request (http, https, ftp, ldap, etc.)

Returns
  the URL scheme

virtual bool xmltooling::GenericRequest::isDefaultPort | ( |  | ) | const
| virtual

Returns true iff the request port is the default port for the request protocol.

Returns
  default port indicator

Reimplemented in xmltooling::HTTPRequest.

virtual bool xmltooling::GenericRequest::isSecure | ( |  | ) | const
| pure virtual

Returns true iff the request is over a confidential channel.

Returns
  confidential channel indicator

Implemented in xmltooling::HTTPRequest.

bool xmltooling::GenericRequest::matchLang | ( | const XMLCh * | tag | ) | const

Matches a language tag against the currently active range.

The language matching process is not thread-safe and must be externally syncronized.

Parameters

  tag | a language tag (e.g., an xml:lang value)

Returns
  true iff the tag matches the active range

static void xmltooling::GenericRequest::setLangDefaults | ( | bool | langFromClient,
|  | const XMLCh * | defaultRange
| ) |  |
| static

Establish default handling of language ranges.

Parameters

  langFromClient | honor client's language preferences if any
  defaultRange | priority list of space-delimited language tags to use by default

bool xmltooling::GenericRequest::startLangMatching | ( |  | ) | const

Initializes the language matching process; call this method to begin the matching process by calling the matchLang method.

The language matching process is not thread-safe and must be externally syncronized.

Returns
  true iff language matching is possible

The documentation for this class was generated from the following file:

- xmltooling/io/GenericRequest.h