#include <http.h>
Inheritance diagram for PHTTPDirectory:
Public Member Functions | |
PHTTPDirectory (const PURL &url, const PDirectory &dir) | |
PHTTPDirectory (const PURL &url, const PDirectory &dir, const PHTTPAuthority &auth) | |
virtual PHTTPRequest * | CreateRequest (const PURL &url, const PMIMEInfo &inMIME, const PMultipartFormInfoArray &multipartFormInfo, PHTTPServer &socket) |
virtual PBoolean | LoadHeaders (PHTTPRequest &request) |
virtual PString | LoadText (PHTTPRequest &request) |
void | EnableAuthorisation (const PString &realm) |
void | AllowDirectories (PBoolean enable=PTrue) |
Protected Member Functions | |
PBoolean | CheckAuthority (PHTTPServer &server, const PHTTPRequest &request, const PHTTPConnectionInfo &conInfo) |
PBoolean | FindAuthorisations (const PDirectory &dir, PString &realm, PStringToString &authorisations) |
Protected Attributes | |
PDirectory | basePath |
PString | authorisationRealm |
PBoolean | allowDirectoryListing |
All subdirectories and files are available as URL names in the HTTP name space. This effectively grafts a file system directory tree onto the URL name space tree.
See the PMIMEInfo# class for more information on the mappings between file types and MIME types.
PHTTPDirectory::PHTTPDirectory | ( | const PURL & | url, | |
const PDirectory & | dir | |||
) |
dir | Name of the resource in URL space. Location of file in file system. |
PHTTPDirectory::PHTTPDirectory | ( | const PURL & | url, | |
const PDirectory & | dir, | |||
const PHTTPAuthority & | auth | |||
) |
dir | Name of the resource in URL space. |
auth | Location of file in file system. Authorisation for the resource. |
virtual PHTTPRequest* PHTTPDirectory::CreateRequest | ( | const PURL & | url, | |
const PMIMEInfo & | inMIME, | |||
const PMultipartFormInfoArray & | multipartFormInfo, | |||
PHTTPServer & | socket | |||
) | [virtual] |
Create a new request block for this type of resource.
Reimplemented from PHTTPFile.
virtual PBoolean PHTTPDirectory::LoadHeaders | ( | PHTTPRequest & | request | ) | [virtual] |
Get the headers for block of data (eg HTML) that the resource contains. This will fill in all the fields of the outMIME
parameter required by the resource and return the status for the load.
request | Information on this request. |
Reimplemented from PHTTPFile.
virtual PString PHTTPDirectory::LoadText | ( | PHTTPRequest & | request | ) | [virtual] |
Get a block of text data (eg HTML) that the resource contains.
The default behaviour is to assert, one of LoadText()# or LoadData()# functions must be overridden for correct operation.
request | Information on this request. |
Reimplemented from PHTTPFile.
void PHTTPDirectory::EnableAuthorisation | ( | const PString & | realm | ) |
Enable or disable access control using .access files. A directory tree containing a _access file will require authorisation to allow access. This file has contains one or more lines, each containing a username and password seperated by a ":" character.
The parameter sets the realm used for authorisation requests. An empty realm disables auhtorisation.
void PHTTPDirectory::AllowDirectories | ( | PBoolean | enable = PTrue |
) |
Enable or disable directory listings when a default directory file does not exist
PBoolean PHTTPDirectory::CheckAuthority | ( | PHTTPServer & | server, | |
const PHTTPRequest & | request, | |||
const PHTTPConnectionInfo & | conInfo | |||
) | [protected, virtual] |
See if the resource is authorised given the mime info
Reimplemented from PHTTPResource.
PBoolean PHTTPDirectory::FindAuthorisations | ( | const PDirectory & | dir, | |
PString & | realm, | |||
PStringToString & | authorisations | |||
) | [protected] |
PDirectory PHTTPDirectory::basePath [protected] |
PString PHTTPDirectory::authorisationRealm [protected] |
PBoolean PHTTPDirectory::allowDirectoryListing [protected] |