1*a1a3b679SAndreas Boehler<?php 2*a1a3b679SAndreas Boehler 3*a1a3b679SAndreas Boehlernamespace Sabre\DAV; 4*a1a3b679SAndreas Boehler 5*a1a3b679SAndreas Boehler/** 6*a1a3b679SAndreas Boehler * The IExtendedCollection interface. 7*a1a3b679SAndreas Boehler * 8*a1a3b679SAndreas Boehler * This interface can be used to create special-type of collection-resources 9*a1a3b679SAndreas Boehler * as defined by RFC 5689. 10*a1a3b679SAndreas Boehler * 11*a1a3b679SAndreas Boehler * @copyright Copyright (C) 2007-2015 fruux GmbH (https://fruux.com/). 12*a1a3b679SAndreas Boehler * @author Evert Pot (http://evertpot.com/) 13*a1a3b679SAndreas Boehler * @license http://sabre.io/license/ Modified BSD License 14*a1a3b679SAndreas Boehler */ 15*a1a3b679SAndreas Boehlerinterface IExtendedCollection extends ICollection { 16*a1a3b679SAndreas Boehler 17*a1a3b679SAndreas Boehler /** 18*a1a3b679SAndreas Boehler * Creates a new collection. 19*a1a3b679SAndreas Boehler * 20*a1a3b679SAndreas Boehler * This method will receive a MkCol object with all the information about 21*a1a3b679SAndreas Boehler * the new collection that's being created. 22*a1a3b679SAndreas Boehler * 23*a1a3b679SAndreas Boehler * The MkCol object contains information about the resourceType of the new 24*a1a3b679SAndreas Boehler * collection. If you don't support the specified resourceType, you should 25*a1a3b679SAndreas Boehler * throw Exception\InvalidResourceType. 26*a1a3b679SAndreas Boehler * 27*a1a3b679SAndreas Boehler * The object also contains a list of WebDAV properties for the new 28*a1a3b679SAndreas Boehler * collection. 29*a1a3b679SAndreas Boehler * 30*a1a3b679SAndreas Boehler * You should call the handle() method on this object to specify exactly 31*a1a3b679SAndreas Boehler * which properties you are storing. This allows the system to figure out 32*a1a3b679SAndreas Boehler * exactly which properties you didn't store, which in turn allows other 33*a1a3b679SAndreas Boehler * plugins (such as the propertystorage plugin) to handle storing the 34*a1a3b679SAndreas Boehler * property for you. 35*a1a3b679SAndreas Boehler * 36*a1a3b679SAndreas Boehler * @param string $name 37*a1a3b679SAndreas Boehler * @param MkCol $mkCol 38*a1a3b679SAndreas Boehler * @throws Exception\InvalidResourceType 39*a1a3b679SAndreas Boehler * @return void 40*a1a3b679SAndreas Boehler */ 41*a1a3b679SAndreas Boehler function createExtendedCollection($name, MkCol $mkCol); 42*a1a3b679SAndreas Boehler 43*a1a3b679SAndreas Boehler} 44