diff options
Diffstat (limited to 'vendor/sabre/dav/lib/Sabre/DAV/ServerPlugin.php')
-rw-r--r-- | vendor/sabre/dav/lib/Sabre/DAV/ServerPlugin.php | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/vendor/sabre/dav/lib/Sabre/DAV/ServerPlugin.php b/vendor/sabre/dav/lib/Sabre/DAV/ServerPlugin.php new file mode 100644 index 000000000..b8396abaf --- /dev/null +++ b/vendor/sabre/dav/lib/Sabre/DAV/ServerPlugin.php @@ -0,0 +1,90 @@ +<?php + +namespace Sabre\DAV; + +/** + * The baseclass for all server plugins. + * + * Plugins can modify or extend the servers behaviour. + * + * @copyright Copyright (C) 2007-2013 fruux GmbH (https://fruux.com/). + * @author Evert Pot (http://evertpot.com/) + * @license http://code.google.com/p/sabredav/wiki/License Modified BSD License + */ +abstract class ServerPlugin { + + /** + * This initializes the plugin. + * + * This function is called by Sabre\DAV\Server, after + * addPlugin is called. + * + * This method should set up the required event subscriptions. + * + * @param Server $server + * @return void + */ + abstract public function initialize(Server $server); + + /** + * This method should return a list of server-features. + * + * This is for example 'versioning' and is added to the DAV: header + * in an OPTIONS response. + * + * @return array + */ + public function getFeatures() { + + return array(); + + } + + /** + * Use this method to tell the server this plugin defines additional + * HTTP methods. + * + * This method is passed a uri. It should only return HTTP methods that are + * available for the specified uri. + * + * @param string $uri + * @return array + */ + public function getHTTPMethods($uri) { + + return array(); + + } + + /** + * Returns a plugin name. + * + * Using this name other plugins will be able to access other plugins + * using \Sabre\DAV\Server::getPlugin + * + * @return string + */ + public function getPluginName() { + + return get_class($this); + + } + + /** + * Returns a list of reports this plugin supports. + * + * This will be used in the {DAV:}supported-report-set property. + * Note that you still need to subscribe to the 'report' event to actually + * implement them + * + * @param string $uri + * @return array + */ + public function getSupportedReportSet($uri) { + + return array(); + + } + +} + |