array( * '{DAV:}displayname' => null, * ), * 424 => array( * '{DAV:}owner' => null, * ) * ) * * In this example it was forbidden to update {DAV:}displayname. * (403 Forbidden), which in turn also caused {DAV:}owner to fail * (424 Failed Dependency) because the request needs to be atomic. * * @param string $calendarId * @param array $properties * @return bool|array */ public function updateCalendar($calendarId, array $properties) { return false; } /** * Delete a calendar and all it's objects * * @param string $calendarId * @return void */ abstract function deleteCalendar($calendarId); /** * Returns all calendar objects within a calendar object. * * Every item contains an array with the following keys: * * id - unique identifier which will be used for subsequent updates * * calendardata - The iCalendar-compatible calnedar data * * uri - a unique key which will be used to construct the uri. This can be any arbitrary string. * * lastmodified - a timestamp of the last modification time * * @param string $calendarId * @return array */ abstract function getCalendarObjects($calendarId); /** * Returns information from a single calendar object, based on it's object uri. * * @param string $calendarId * @param string $objectUri * @return array */ abstract function getCalendarObject($calendarId,$objectUri); /** * Creates a new calendar object. * * @param string $calendarId * @param string $objectUri * @param string $calendarData * @return void */ abstract function createCalendarObject($calendarId,$objectUri,$calendarData); /** * Updates an existing calendarobject, based on it's uri. * * @param string $calendarId * @param string $objectUri * @param string $calendarData * @return void */ abstract function updateCalendarObject($calendarId,$objectUri,$calendarData); /** * Deletes an existing calendar object. * * @param string $calendarId * @param string $objectUri * @return void */ abstract function deleteCalendarObject($calendarId,$objectUri); }