diff options
Diffstat (limited to 'lib/public/Activity/IProvider.php')
-rw-r--r-- | lib/public/Activity/IProvider.php | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/lib/public/Activity/IProvider.php b/lib/public/Activity/IProvider.php new file mode 100644 index 00000000000..dec4e7ade64 --- /dev/null +++ b/lib/public/Activity/IProvider.php @@ -0,0 +1,31 @@ +<?php + +/** + * SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: AGPL-3.0-or-later + */ +namespace OCP\Activity; + +use OCP\Activity\Exceptions\UnknownActivityException; + +/** + * Interface IProvider + * + * @since 11.0.0 + */ +interface IProvider { + /** + * @param string $language The language which should be used for translating, e.g. "en" + * @param IEvent $event The current event which should be parsed + * @param IEvent|null $previousEvent A potential previous event which you can combine with the current one. + * To do so, simply use setChildEvent($previousEvent) after setting the + * combined subject on the current event. + * @return IEvent + * @throws UnknownActivityException Should be thrown if your provider does not know this event + * @since 11.0.0 + * @since 30.0.0 Providers should throw {@see UnknownActivityException} instead of \InvalidArgumentException + * when they did not handle the event. Throwing \InvalidArgumentException directly is deprecated and will + * be logged as an error in Nextcloud 39. + */ + public function parse($language, IEvent $event, ?IEvent $previousEvent = null); +} |