1<?php 2 3namespace Sabre\DAV; 4 5/** 6 * IProperties interface 7 * 8 * Implement this interface to support custom WebDAV properties requested and sent from clients. 9 * 10 * @copyright Copyright (C) fruux GmbH (https://fruux.com/) 11 * @author Evert Pot (http://evertpot.com/) 12 * @license http://sabre.io/license/ Modified BSD License 13 */ 14interface IProperties extends INode { 15 16 /** 17 * Updates properties on this node. 18 * 19 * This method received a PropPatch object, which contains all the 20 * information about the update. 21 * 22 * To update specific properties, call the 'handle' method on this object. 23 * Read the PropPatch documentation for more information. 24 * 25 * @param PropPatch $propPatch 26 * @return void 27 */ 28 function propPatch(PropPatch $propPatch); 29 30 /** 31 * Returns a list of properties for this nodes. 32 * 33 * The properties list is a list of propertynames the client requested, 34 * encoded in clark-notation {xmlnamespace}tagname 35 * 36 * If the array is empty, it means 'all properties' were requested. 37 * 38 * Note that it's fine to liberally give properties back, instead of 39 * conforming to the list of requested properties. 40 * The Server class will filter out the extra. 41 * 42 * @param array $properties 43 * @return array 44 */ 45 function getProperties($properties); 46 47} 48