1ece06dc29046baff283a609ed8c0ca7577b5671
[GitHub/WoltLab/WCF.git] /
1 <?php
2 namespace wcf\system\user\notification\event;
3 use wcf\data\IDatabaseObjectProcessor;
4 use wcf\system\user\notification\type\IUserNotificationType;
5
6 /**
7 * This interface should be implemented by every event which is fired by the notification system.
8 *
9 * @author Marcel Werk, Oliver Kliebisch
10 * @copyright 2001-2011 WoltLab GmbH, Oliver Kliebisch
11 * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
12 * @package com.woltlab.wcf.notification
13 * @subpackage system.user.notification.event
14 * @category Community Framework
15 */
16 interface IUserNotificationEvent extends IDatabaseObjectProcessor {
17 /**
18 * Returns the message for this notification event.
19 *
20 * @param wcf\system\user\notification\type\IUserNotificationType $notificationType
21 * @return string
22 */
23 public function getMessage(IUserNotificationType $notificationType);
24
25 /**
26 * Returns the short output for this notification event.
27 *
28 * @return string
29 */
30 public function getShortOutput();
31
32 /**
33 * Returns the medium output for this notification event.
34 *
35 * @return string
36 */
37 public function getMediumOutput();
38
39 /**
40 * Returns the full output for this notification event.
41 *
42 * @return string
43 */
44 public function getOutput();
45
46 /**
47 * Returns the human-readable title of this event.
48 *
49 * @return string
50 */
51 public function getTitle();
52
53 /**
54 * Returns the human-readable description of this event.
55 *
56 * @return string
57 */
58 public function getDescription();
59
60 /**
61 * Returns true if this event supports the given notification type.
62 *
63 * @param wcf\system\user\notification\type\IUserNotificationType $notificationType
64 * @return boolean
65 */
66 public function supportsNotificationType(IUserNotificationType $notificationType);
67 }