104 foreach ($required as $item) {
105 if (!isset($values[$item])) {
106 throw new \InvalidArgumentException($item .
' is a required constructor option');
110 foreach ($values as
$key => $value) {
111 if (!property_exists($this,
$key)) {
112 throw new \InvalidArgumentException(
'Unknown option: ' .
$key);
114 $this->
$key = $value;
155 $this->dtStamp->setTimezone(
new \DateTimezone(
'GMT'));
156 $writer->
writeElement($cs .
'dtstamp', $this->dtStamp->format(
'Ymd\\THis\\Z'));
161 $writer->
writeElement($cs .
'in-reply-to', $this->inReplyTo);
164 switch ($this->type) {
176 '{DAV:}href' => $writer->contextUri . $this->hostUrl
179 if ($this->summary) {
182 $writer->endElement();
xmlSerializeFull(Writer $writer)
This method serializes the entire notification, as it is used in the response body.
This interface reflects a single notification type.
xmlSerialize(Writer $writer)
The xmlSerialize method is called during xml writing.
startElement($name)
Opens a new element.
This class represents the cs:invite-reply notification element.
const NS_CALENDARSERVER
This is the namespace for the proprietary calendarserver extensions.
getETag()
Returns the ETag for this notification.
__construct(array $values)
Creates the Invite Reply Notification.
writeElement($name, $content=null)
Write a full element tag and it's contents.
getId()
Returns a unique id for this notification.