Documentation

Invite
in package
implements NotificationInterface

This class represents the cs:invite-notification notification element.

This element is defined here: http://svn.calendarserver.org/repository/calendarserver/CalendarServer/trunk/doc/Extensions/caldav-sharing.txt

Tags
copyright

Copyright (C) fruux GmbH (https://fruux.com/)

author

Evert Pot (http://evertpot.com/)

license

http://sabre.io/license/ Modified BSD License

Interfaces, Classes and Traits

NotificationInterface
This interface reflects a single notification type.

Table of Contents

$commonName  : string
The name of the sharer.
$dtStamp  : DateTime
Timestamp of the notification.
$etag  : string
The Etag for the notification.
$firstName  : string
The name of the sharer.
$hostUrl  : string
A url to the shared calendar.
$href  : string
A url to the recipient of the notification. This can be an email address (mailto:), or a principal url.
$id  : string
A unique id for the message.
$lastName  : string
The name of the sharer.
$organizer  : string
Url to the sharer of the calendar.
$readOnly  : bool
True if access to a calendar is read-only.
$summary  : string
A description of the share request.
$supportedComponents  : SupportedCalendarComponentSet
The list of supported components.
$type  : int
The type of message, see the SharingPlugin::STATUS_* constants.
__construct()  : mixed
Creates the Invite notification.
getETag()  : string
Returns the ETag for this notification.
getId()  : string
Returns a unique id for this notification.
xmlSerialize()  : mixed
The xmlSerialize method is called during xml writing.
xmlSerializeFull()  : mixed
This method serializes the entire notification, as it is used in the response body.

Properties

$commonName

The name of the sharer.

protected string $commonName

$dtStamp

Timestamp of the notification.

protected DateTime $dtStamp

$etag

The Etag for the notification.

protected string $etag

$firstName

The name of the sharer.

protected string $firstName

$hostUrl

A url to the shared calendar.

protected string $hostUrl

$href

A url to the recipient of the notification. This can be an email address (mailto:), or a principal url.

protected string $href

$id

A unique id for the message.

protected string $id

$lastName

The name of the sharer.

protected string $lastName

$organizer

Url to the sharer of the calendar.

protected string $organizer

$readOnly

True if access to a calendar is read-only.

protected bool $readOnly

$summary

A description of the share request.

protected string $summary

$type

The type of message, see the SharingPlugin::STATUS_* constants.

protected int $type

Methods

__construct()

Creates the Invite notification.

public __construct(array<string|int, mixed> $values) : mixed

This constructor receives an array with the following elements:

  • id - A unique id
  • etag - The etag
  • dtStamp - A DateTime object with a timestamp for the notification.
  • type - The type of notification, see SharingPlugin::STATUS_* constants for details.
  • readOnly - This must be set to true, if this is an invite for read-only access to a calendar.
  • hostUrl - A url to the shared calendar.
  • organizer - Url to the sharer principal.
  • commonName - The real name of the sharer (optional).
  • firstName - The first name of the sharer (optional).
  • lastName - The last name of the sharer (optional).
  • summary - Description of the share, can be the same as the calendar, but may also be modified (optional).
  • supportedComponents - An instance of Sabre\CalDAV\Property\SupportedCalendarComponentSet. This allows the client to determine which components will be supported in the shared calendar. This is also optional.
Parameters
$values : array<string|int, mixed>

All the options

Return values
mixed

getETag()

Returns the ETag for this notification.

public getETag() : string

The ETag must be surrounded by literal double-quotes.

Return values
string

getId()

Returns a unique id for this notification.

public getId() : string

This is just the base url. This should generally be some kind of unique id.

Return values
string

xmlSerialize()

The xmlSerialize method is called during xml writing.

public xmlSerialize(Writer $writer) : mixed

Use the $writer argument to write its own xml serialization.

An important note: do not create a parent element. Any element implementing XmlSerializable should only ever write what's considered its 'inner xml'.

The parent of the current element is responsible for writing a containing element.

This allows serializers to be re-used for different element names.

If you are opening new elements, you must also close them again.

Parameters
$writer : Writer
Return values
mixed

xmlSerializeFull()

This method serializes the entire notification, as it is used in the response body.

public xmlSerializeFull(Writer $writer) : mixed
Parameters
$writer : Writer
Return values
mixed

Search results