Qore xml Module 2.1.0
Loading...
Searching...
No Matches
WebDavHandler::DummyWebDavHandler Class Reference

This class returns 501 Unimplemented responses to all WebDavHandler requests except OPTIONS. More...

#include <DummyWebDavHandler.qc.dox.h>

Inheritance diagram for WebDavHandler::DummyWebDavHandler:
WebDavHandler::AbstractWebDavHandler

Public Member Methods

void constructor ()
 This class returns 501 Unimplemented responses to all WebDavHandler requests except OPTIONS.
 
void constructor (string virtual_relative_path_base)
 Creates the object with the given argument and an in-memory property handler.
 
void constructor (AbstractWebDavPropertyHandler property_handler, string virtual_relative_path_base)
 Creates the object with the given arguments.
 
void constructor (Logger logger, AbstractWebDavPropertyHandler property_handler, string virtual_relative_path_base)
 Creates the object with the given arguments.
 
hash< HttpResponseInfo > handleGetImpl (soft< data > body, hash< auto > hdr, Socket sock, hash< auto > cx)
 
hash< HttpResponseInfo > handleHeadImpl (soft< data > body, hash< auto > hdr, Socket sock, hash< auto > cx)
 
hash< HttpResponseInfo > handlePostImpl (soft< data > body, hash< auto > hdr, Socket sock, hash< auto > cx)
 
hash< HttpResponseInfo > handlePutImpl (soft< data > body, hash< auto > hdr, Socket sock, hash< auto > cx)
 
hash< HttpResponseInfo > handleDeleteImpl (soft< data > body, hash< auto > hdr, Socket sock, hash< auto > cx)
 
hash< HttpResponseInfo > handleCopyImpl (soft< data > body, hash< auto > hdr, Socket sock, hash< auto > cx)
 
hash< HttpResponseInfo > handleMoveImpl (soft< data > body, hash< auto > hdr, Socket sock, hash< auto > cx)
 
hash< HttpResponseInfo > handleLockImpl (soft< data > body, hash< auto > hdr, Socket sock, hash< auto > cx)
 
hash< HttpResponseInfo > handleUnlockImpl (soft< data > body, hash< auto > hdr, Socket sock, hash< auto > cx)
 
hash< HttpResponseInfo > handleMkcolImpl (soft< data > body, hash< auto > hdr, Socket sock, hash< auto > cx)
 
hash< HttpResponseInfo > handlePropfindImpl (soft< data > body, hash< auto > hdr, Socket sock, hash< auto > cx)
 
soft< hash< string, hash< string, hash< string, bool > > > > handleProppatchImpl (soft< list< hash< PropPatchActionInfo > > > actions, soft< hash< auto > > request_xml, hash< auto > hdr, reference< string > href, hash< auto > cx)
 Internal method for handling PROPPATCH requests.
 
- Public Member Methods inherited from WebDavHandler::AbstractWebDavHandler
void constructor (soft< AbstractAuthenticator > auth)
 Creates the object with an empty logger and an in-memory property handler.
 
void constructor (soft< AbstractAuthenticator > auth, string virtual_relative_path_base)
 Creates the object with the given argument and an in-memory property handler.
 
void constructor (soft< AbstractAuthenticator > auth, AbstractWebDavPropertyHandler property_handler, string virtual_relative_path_base)
 Creates the object with the given arguments.
 
void constructor (soft< AbstractAuthenticator > auth, Logger logger, AbstractWebDavPropertyHandler property_handler, string virtual_relative_path_base)
 Creates the object with the given arguments.
 
list< string > getHttpMethods ()
 Returnd a list of WebDavHandler methods.
 
void setLogger (Logger logger)
 Replace the logger.
 
string getRelativePath (string raw_path)
 Returns a relative path from an absolute path.
 
hash< HttpResponseInfo > response (int response_code, data msg)
 Returns a hash that can be used as an HTTP response with the given HTTP response code and response message.
 
hash< HttpResponseInfo > response (int response_code, hash< auto > hdr)
 Returns a hash that can be used as an HTTP response with the given HTTP response code and response headers.
 
hash< HttpResponseInfo > resp400 (data msg)
 Returns a hash that can be used as an HTTP response with a 400 response code and response message.
 
hash< HttpResponseInfo > resp404 ()
 Returns a hash that can be used as an HTTP response with a 404 response code and response message.
 
hash< HttpResponseInfo > resp500 (data msg)
 Returns a hash that can be used as an HTTP response with a 500 response code and response message.
 
hash< HttpResponseInfo > resp501 ()
 Returns a hash that can be used as an HTTP response with a 501 response code and response message.
 
void init (Logger logger, AbstractWebDavPropertyHandler property_handler, string virtual_relative_path_base)
 Common constructor code.
 
string getRealPath (string raw_path)
 Converts a request path to a normalized real path on the filesystem in the root WebDavHandler directory.
 
soft< hash< HttpResponseInfo > > checkAuth (soft< data > body, hash< auto > hdr, string method, hash< auto > cx)
 Checks if the request is authorized; if not, this method must return a value.
 
void copyProperties (string source_url, string target_url)
 Copies all properties from the given source URL to the target URL.
 
void moveProperties (string source_url, string target_url)
 Moves all properties from the given source URL to the target URL.
 
void deleteProperties (string source_url)
 Deletes all properties from the given URL.
 
hash< auto > preparePropFindXmlResponse (hash< auto > base_props, bool all_props, soft< hash< string, hash< string, bool > > > additional_props, bool is_collection, string local_path, string href)
 Returns a hash that can be serialized to an XML string for a PROPFIND request.
 
string getStatusMessage (softstring http_code)
 Returns a status message for the given HTTP response code.
 
hash< HttpResponseInfo > handleOptions (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles a WebDavHandler OPTIONS request.
 
hash< HttpResponseInfo > handleGet (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles HTTP GET requests for WebDavHandler resources.
 
hash< HttpResponseInfo > handleHead (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles HTTP HEAD requests for WebDavHandler resources.
 
hash< HttpResponseInfo > handlePost (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles HTTP POST requests for WebDavHandler resources.
 
hash< HttpResponseInfo > handlePut (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles HTTP PUT requests for WebDavHandler resources.
 
hash< HttpResponseInfo > handleDelete (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles HTTP DELETE requests for WebDavHandler resources.
 
hash< HttpResponseInfo > handleCopy (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles WebDavHandler COPY requests for WebDavHandler resources.
 
hash< HttpResponseInfo > handleMove (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles WebDavHandler MOVE requests for WebDavHandler resources.
 
hash< HttpResponseInfo > handleLock (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles WebDavHandler LOCK requests for WebDavHandler resources.
 
hash< HttpResponseInfo > handleUnlock (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles WebDavHandler UNLOCK requests for WebDavHandler resources.
 
hash< HttpResponseInfo > handleMkcol (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles WebDavHandler MKCOL requests for WebDavHandler resources.
 
hash< HttpResponseInfo > handlePropfind (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles WebDavHandler PROPFIND requests for WebDavHandler resources; reetrieves properties from WebDavHandler resources.
 
void logInfo (string fmt)
 This method is called with informational log messages.
 
void logError (string fmt)
 This method is called with error log messages.
 
void logDebug (string fmt)
 This method is called with debug log messages.
 
hash< auto > getXml (string body)
 Parse incoming XML and handle namespaces.
 
hash< HttpResponseInfo > handleOptionsImpl (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles an HTTP/WebDavHandler OPTIONS request.
 
abstract hash< HttpResponseInfo > handleGetImpl (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles HTTP GET requests for WebDavHandler resources.
 
abstract hash< HttpResponseInfo > handleHeadImpl (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles HTTP HEAD requests for WebDavHandler resources.
 
abstract hash< HttpResponseInfo > handlePostImpl (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles HTTP POST requests for WebDavHandler resources.
 
abstract hash< HttpResponseInfo > handlePutImpl (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles HTTP PUT requests for WebDavHandler resources.
 
abstract hash< HttpResponseInfo > handleDeleteImpl (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles HTTP DELETE requests for WebDavHandler resources.
 
abstract hash< HttpResponseInfo > handleCopyImpl (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles WebDavHandler COPY requests for WebDavHandler resources.
 
abstract hash< HttpResponseInfo > handleMoveImpl (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles WebDavHandler MOVE requests for WebDavHandler resources.
 
abstract hash< HttpResponseInfo > handleLockImpl (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles WebDavHandler LOCK requests for WebDavHandler resources.
 
abstract hash< HttpResponseInfo > handleUnlockImpl (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles WebDavHandler UNLOCK requests for WebDavHandler resources.
 
abstract hash< HttpResponseInfo > handleMkcolImpl (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles WebDavHandler MKCOL requests for WebDavHandler resources.
 
abstract hash< HttpResponseInfo > handlePropfindImpl (soft< data > body, hash< auto > hdr, Socket s, hash< auto > cx)
 Handles WebDavHandler PROPFIND requests for WebDavHandler resources; reetrieves properties from WebDavHandler resources.
 
abstract soft< hash< string, hash< string, hash< string, bool > > > > handleProppatchImpl (soft< list< hash< PropPatchActionInfo > > > actions, soft< hash< auto > > request_xml, hash< auto > hdr, reference< string > href, hash< auto > cx)
 Internal method for handling PROPPATCH requests.
 
string getNsPrefix (string ns)
 Returns a new namespace prefix.
 

Additional Inherited Members

- Static Public Member Methods inherited from WebDavHandler::AbstractWebDavHandler
static void combineValue (reference< auto > h, auto v)
 Combines values recursively.
 
- Public Attributes inherited from WebDavHandler::AbstractWebDavHandler
const auto RequestMethods = ...
 A hash of all supported WebDavHandler methods mapped to method names.
 
const auto DestMethods = ...
 A hash of methods that require a Destination header.
 
const auto AllowHeaderValue = ...
 List of WebDavHandler methods in a string suitable for use in HTTP responses.
 
const auto MethodList = ...
 List of WebDavHandler methods.
 
const auto PPA_Remove = ...
 PROPPATCH action: remove.
 
const auto PPA_Set = ...
 PROPPATCH action: set.
 
- Private Attributes inherited from WebDavHandler::AbstractWebDavHandler
AbstractWebDavPropertyHandler property_handler
 The property handler object.
 
string virtual_base_path
 The virtual base path for resources served by the WebDavHandler handler.
 
Logger logger
 The Logger for this object.
 

Detailed Description

This class returns 501 Unimplemented responses to all WebDavHandler requests except OPTIONS.

Member Function Documentation

◆ constructor() [1/3]

void WebDavHandler::DummyWebDavHandler::constructor ( AbstractWebDavPropertyHandler  property_handler,
string  virtual_relative_path_base 
)

Creates the object with the given arguments.

Parameters
property_handlerto handle properties
virtual_relative_path_basethe virtual base path for WebDavHandler requests; this path will be stripped from requests internally when serving WebDavHandler resources

◆ constructor() [2/3]

void WebDavHandler::DummyWebDavHandler::constructor ( Logger  logger,
AbstractWebDavPropertyHandler  property_handler,
string  virtual_relative_path_base 
)

Creates the object with the given arguments.

Parameters
loggerthe logger
property_handlerto handle properties
virtual_relative_path_basethe virtual base path for WebDavHandler requests; this path will be stripped from requests internally when serving WebDavHandler resources

◆ constructor() [3/3]

void WebDavHandler::DummyWebDavHandler::constructor ( string  virtual_relative_path_base)

Creates the object with the given argument and an in-memory property handler.

Parameters
virtual_relative_path_basethe virtual base path for WebDavHandler requests; this path will be stripped from requests internally when serving WebDavHandler resources

◆ handleCopyImpl()

hash< HttpResponseInfo > WebDavHandler::DummyWebDavHandler::handleCopyImpl ( soft< data >  body,
hash< auto >  hdr,
Socket  sock,
hash< auto >  cx 
)

COPY

Copy a resource from one URI to another.

Note
This method always returns a 501 Unimplemented response

◆ handleDeleteImpl()

hash< HttpResponseInfo > WebDavHandler::DummyWebDavHandler::handleDeleteImpl ( soft< data >  body,
hash< auto >  hdr,
Socket  sock,
hash< auto >  cx 
)

DELETE

Delete a resource.

Note
This method always returns a 501 Unimplemented response

◆ handleGetImpl()

hash< HttpResponseInfo > WebDavHandler::DummyWebDavHandler::handleGetImpl ( soft< data >  body,
hash< auto >  hdr,
Socket  sock,
hash< auto >  cx 
)

GET

Get a resource.

Note
This method always returns a 501 Unimplemented response

◆ handleHeadImpl()

hash< HttpResponseInfo > WebDavHandler::DummyWebDavHandler::handleHeadImpl ( soft< data >  body,
hash< auto >  hdr,
Socket  sock,
hash< auto >  cx 
)

HEAD

Same like GET but without sending a body.

Note
This method always returns a 501 Unimplemented response

◆ handleLockImpl()

hash< HttpResponseInfo > WebDavHandler::DummyWebDavHandler::handleLockImpl ( soft< data >  body,
hash< auto >  hdr,
Socket  sock,
hash< auto >  cx 
)

LOCK

Put a lock on a resource. WebDavHandler supports both shared and exclusive locks.

Note
This method always returns a 501 Unimplemented response

◆ handleMkcolImpl()

hash< HttpResponseInfo > WebDavHandler::DummyWebDavHandler::handleMkcolImpl ( soft< data >  body,
hash< auto >  hdr,
Socket  sock,
hash< auto >  cx 
)

MKCOL

Create collections (aka a directory).

Note
This method always returns a 501 Unimplemented response

◆ handleMoveImpl()

hash< HttpResponseInfo > WebDavHandler::DummyWebDavHandler::handleMoveImpl ( soft< data >  body,
hash< auto >  hdr,
Socket  sock,
hash< auto >  cx 
)

MOVE

Move a resource from one URI to another.

Note
This method always returns a 501 Unimplemented response

◆ handlePostImpl()

hash< HttpResponseInfo > WebDavHandler::DummyWebDavHandler::handlePostImpl ( soft< data >  body,
hash< auto >  hdr,
Socket  sock,
hash< auto >  cx 
)

POST

Create new resource.

Note
This method always returns a 501 Unimplemented response

◆ handlePropfindImpl()

hash< HttpResponseInfo > WebDavHandler::DummyWebDavHandler::handlePropfindImpl ( soft< data >  body,
hash< auto >  hdr,
Socket  sock,
hash< auto >  cx 
)

PROPFIND

Retrieve properties, stored as XML, from a web resource. It is also overloaded to allow one to retrieve the collection structure (also known as directory hierarchy) of a remote system.

Note
This method always returns a 501 Unimplemented response

◆ handleProppatchImpl()

soft< hash< string, hash< string, hash< string, bool > > > > WebDavHandler::DummyWebDavHandler::handleProppatchImpl ( soft< list< hash< PropPatchActionInfo > > >  actions,
soft< hash< auto > >  request_xml,
hash< auto >  hdr,
reference< string >  href,
hash< auto >  cx 
)

Internal method for handling PROPPATCH requests.

Parameters
hrefthe href for the response
cxthe HTTP call context
hdras hash HTTP headers
request_xmlthe parsed XML in the request
actionsa list of set and remove actions to execute on the given properties
Returns
a status map of HTTP code -> namespace -> property -> True
Exceptions
WEBDAVHANDLER-ERRORan error occured
Note
This method always throws a WEBDAVHANDLER-ERROR exception to return a 501 Unimplemented response

◆ handlePutImpl()

hash< HttpResponseInfo > WebDavHandler::DummyWebDavHandler::handlePutImpl ( soft< data >  body,
hash< auto >  hdr,
Socket  sock,
hash< auto >  cx 
)

PUT

Modify resource.

Note
This method always returns a 501 Unimplemented response

◆ handleUnlockImpl()

hash< HttpResponseInfo > WebDavHandler::DummyWebDavHandler::handleUnlockImpl ( soft< data >  body,
hash< auto >  hdr,
Socket  sock,
hash< auto >  cx 
)

UNLOCK

Remove a lock from a resource.

Note
This method always returns a 501 Unimplemented response

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