ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
Sabre\CalDAV\Backend\SubscriptionSupport Interface Reference

Every CalDAV backend must at least implement this interface. More...

+ Inheritance diagram for Sabre\CalDAV\Backend\SubscriptionSupport:
+ Collaboration diagram for Sabre\CalDAV\Backend\SubscriptionSupport:

Public Member Functions

 getSubscriptionsForUser ($principalUri)
 Returns a list of subscriptions for a principal. More...
 
 createSubscription ($principalUri, $uri, array $properties)
 Creates a new subscription for a principal. More...
 
 updateSubscription ($subscriptionId, DAV\PropPatch $propPatch)
 Updates a subscription. More...
 
 deleteSubscription ($subscriptionId)
 Deletes a subscription. More...
 
- Public Member Functions inherited from Sabre\CalDAV\Backend\BackendInterface
 getCalendarsForUser ($principalUri)
 Returns a list of calendars for a principal. More...
 
 createCalendar ($principalUri, $calendarUri, array $properties)
 Creates a new calendar for a principal. More...
 
 updateCalendar ($calendarId, \Sabre\DAV\PropPatch $propPatch)
 Updates properties for a calendar. More...
 
 deleteCalendar ($calendarId)
 Delete a calendar and all its objects. More...
 
 getCalendarObjects ($calendarId)
 Returns all calendar objects within a calendar. More...
 
 getCalendarObject ($calendarId, $objectUri)
 Returns information from a single calendar object, based on it's object uri. More...
 
 getMultipleCalendarObjects ($calendarId, array $uris)
 Returns a list of calendar objects. More...
 
 createCalendarObject ($calendarId, $objectUri, $calendarData)
 Creates a new calendar object. More...
 
 updateCalendarObject ($calendarId, $objectUri, $calendarData)
 Updates an existing calendarobject, based on it's uri. More...
 
 deleteCalendarObject ($calendarId, $objectUri)
 Deletes an existing calendar object. More...
 
 calendarQuery ($calendarId, array $filters)
 Performs a calendar-query on the contents of this calendar. More...
 
 getCalendarObjectByUID ($principalUri, $uid)
 Searches through all of a users calendars and calendar objects to find an object with a specific UID. More...
 

Detailed Description

Every CalDAV backend must at least implement this interface.

Author
Evert Pot (http://evertpot.com/) http://sabre.io/license/ Modified BSD License

Definition at line 14 of file SubscriptionSupport.php.

Member Function Documentation

◆ createSubscription()

Sabre\CalDAV\Backend\SubscriptionSupport::createSubscription (   $principalUri,
  $uri,
array  $properties 
)

Creates a new subscription for a principal.

If the creation was a success, an id must be returned that can be used to reference this subscription in other methods, such as updateSubscription.

Parameters
string$principalUri
string$uri
array$properties
Returns
mixed

Implemented in Sabre\CalDAV\Backend\PDO, and Sabre\CalDAV\Backend\MockSubscriptionSupport.

◆ deleteSubscription()

Sabre\CalDAV\Backend\SubscriptionSupport::deleteSubscription (   $subscriptionId)

Deletes a subscription.

Parameters
mixed$subscriptionId
Returns
void

Implemented in Sabre\CalDAV\Backend\PDO, and Sabre\CalDAV\Backend\MockSubscriptionSupport.

◆ getSubscriptionsForUser()

Sabre\CalDAV\Backend\SubscriptionSupport::getSubscriptionsForUser (   $principalUri)

Returns a list of subscriptions for a principal.

Every subscription is an array with the following keys:

  • id, a unique id that will be used by other functions to modify the subscription. This can be the same as the uri or a database key.
  • uri. This is just the 'base uri' or 'filename' of the subscription.
  • principaluri. The owner of the subscription. Almost always the same as principalUri passed to this method.

Furthermore, all the subscription info must be returned too:

  1. {DAV:}displayname
  2. {http://apple.com/ns/ical/}refreshrate
  3. {http://calendarserver.org/ns/}subscribed-strip-todos (omit if todos should not be stripped).
  4. {http://calendarserver.org/ns/}subscribed-strip-alarms (omit if alarms should not be stripped).
  5. {http://calendarserver.org/ns/}subscribed-strip-attachments (omit if attachments should not be stripped).
  6. {http://calendarserver.org/ns/}source (Must be a Sabre).
  7. {http://apple.com/ns/ical/}calendar-color
  8. {http://apple.com/ns/ical/}calendar-order
  9. {urn:ietf:params:xml:ns:caldav}supported-calendar-component-set (should just be an instance of Sabre, with a bunch of default components).
Parameters
string$principalUri
Returns
array

Implemented in Sabre\CalDAV\Backend\PDO, and Sabre\CalDAV\Backend\MockSubscriptionSupport.

◆ updateSubscription()

Sabre\CalDAV\Backend\SubscriptionSupport::updateSubscription (   $subscriptionId,
DAV\PropPatch  $propPatch 
)

Updates a subscription.

The list of mutations is stored in a Sabre object. To do the actual updates, you must tell this object which properties you're going to process with the handle() method.

Calling the handle method is like telling the PropPatch object "I promise I can handle updating this property".

Read the PropPatch documentation for more info and examples.

Parameters
mixed$subscriptionId
\Sabre\DAV\PropPatch$propPatch
Returns
void

Implemented in Sabre\CalDAV\Backend\PDO, and Sabre\CalDAV\Backend\MockSubscriptionSupport.


The documentation for this interface was generated from the following file: