streams/vendor/sabre/dav/lib/DAV/IExtendedCollection.php

43 lines
1.4 KiB
PHP

<?php
namespace Sabre\DAV;
/**
* The IExtendedCollection interface.
*
* This interface can be used to create special-type of collection-resources
* as defined by RFC 5689.
*
* @copyright Copyright (C) fruux GmbH (https://fruux.com/)
* @author Evert Pot (http://evertpot.com/)
* @license http://sabre.io/license/ Modified BSD License
*/
interface IExtendedCollection extends ICollection {
/**
* Creates a new collection.
*
* This method will receive a MkCol object with all the information about
* the new collection that's being created.
*
* The MkCol object contains information about the resourceType of the new
* collection. If you don't support the specified resourceType, you should
* throw Exception\InvalidResourceType.
*
* The object also contains a list of WebDAV properties for the new
* collection.
*
* You should call the handle() method on this object to specify exactly
* which properties you are storing. This allows the system to figure out
* exactly which properties you didn't store, which in turn allows other
* plugins (such as the propertystorage plugin) to handle storing the
* property for you.
*
* @param string $name
* @param MkCol $mkCol
* @throws Exception\InvalidResourceType
* @return void
*/
function createExtendedCollection($name, MkCol $mkCol);
}