* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
/**
* Returns the URL scheme of the request (http, https, ftp, ldap, etc.)
/**
* Returns the URL scheme of the request (http, https, ftp, ldap, etc.)
* @return the MIME type, or an empty string
*/
virtual std::string getContentType() const=0;
/**
* Returns the length of the request body, if known.
* @return the MIME type, or an empty string
*/
virtual std::string getContentType() const=0;
/**
* Returns the length of the request body, if known.
* @return the content length, or -1 if unknown
*/
virtual long getContentLength() const=0;
/**
* Returns the raw request body.
* @return the content length, or -1 if unknown
*/
virtual long getContentLength() const=0;
/**
* Returns the raw request body.
* @return the request body, or NULL
*/
virtual const char* getRequestBody() const=0;
* @return the request body, or NULL
*/
virtual const char* getRequestBody() const=0;
/**
* Returns a decoded named parameter value from the request.
* If a parameter has multiple values, only one will be returned.
/**
* Returns a decoded named parameter value from the request.
* If a parameter has multiple values, only one will be returned.
/**
* Returns all of the decoded values of a named parameter from the request.
* All values found will be returned.
/**
* Returns all of the decoded values of a named parameter from the request.
* All values found will be returned.
* @param name the name of the parameter to return
* @param values a vector in which to return pointers to the decoded values
* @return the number of values returned
* @param name the name of the parameter to return
* @param values a vector in which to return pointers to the decoded values
* @return the number of values returned
virtual std::vector<const char*>::size_type getParameters(
const char* name, std::vector<const char*>& values
) const=0;
virtual std::vector<const char*>::size_type getParameters(
const char* name, std::vector<const char*>& values
) const=0;
/**
* Returns the transport-authenticated identity associated with the request,
* if authentication is solely handled by the transport.
/**
* Returns the transport-authenticated identity associated with the request,
* if authentication is solely handled by the transport.
/**
* Returns the chain of certificates sent by the client.
* They are not guaranteed to be valid according to any particular definition.
/**
* Returns the chain of certificates sent by the client.
* They are not guaranteed to be valid according to any particular definition.