1*a1a3b679SAndreas Boehler<?php 2*a1a3b679SAndreas Boehler 3*a1a3b679SAndreas Boehlernamespace Sabre\CalDAV\Notifications; 4*a1a3b679SAndreas Boehler 5*a1a3b679SAndreas Boehler/** 6*a1a3b679SAndreas Boehler * This node represents a single notification. 7*a1a3b679SAndreas Boehler * 8*a1a3b679SAndreas Boehler * The signature is mostly identical to that of Sabre\DAV\IFile, but the get() method 9*a1a3b679SAndreas Boehler * MUST return an xml document that matches the requirements of the 10*a1a3b679SAndreas Boehler * 'caldav-notifications.txt' spec. 11*a1a3b679SAndreas Boehler * 12*a1a3b679SAndreas Boehler * For a complete example, check out the Notification class, which contains 13*a1a3b679SAndreas Boehler * some helper functions. 14*a1a3b679SAndreas Boehler * 15*a1a3b679SAndreas Boehler * @copyright Copyright (C) 2007-2015 fruux GmbH (https://fruux.com/). 16*a1a3b679SAndreas Boehler * @author Evert Pot (http://evertpot.com/) 17*a1a3b679SAndreas Boehler * @license http://sabre.io/license/ Modified BSD License 18*a1a3b679SAndreas Boehler */ 19*a1a3b679SAndreas Boehlerinterface INode { 20*a1a3b679SAndreas Boehler 21*a1a3b679SAndreas Boehler /** 22*a1a3b679SAndreas Boehler * This method must return an xml element, using the 23*a1a3b679SAndreas Boehler * Sabre\CalDAV\Notifications\INotificationType classes. 24*a1a3b679SAndreas Boehler * 25*a1a3b679SAndreas Boehler * @return INotificationType 26*a1a3b679SAndreas Boehler */ 27*a1a3b679SAndreas Boehler function getNotificationType(); 28*a1a3b679SAndreas Boehler 29*a1a3b679SAndreas Boehler /** 30*a1a3b679SAndreas Boehler * Returns the etag for the notification. 31*a1a3b679SAndreas Boehler * 32*a1a3b679SAndreas Boehler * The etag must be surrounded by litteral double-quotes. 33*a1a3b679SAndreas Boehler * 34*a1a3b679SAndreas Boehler * @return string 35*a1a3b679SAndreas Boehler */ 36*a1a3b679SAndreas Boehler function getETag(); 37*a1a3b679SAndreas Boehler 38*a1a3b679SAndreas Boehler} 39