From 1b59003d6df7ddf97ff71cc651b4fc064f8ebc17 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20M=C3=BCller?= Date: Fri, 20 Sep 2013 16:37:52 +0200 Subject: [PATCH] adding basic interfaces for the activities api --- lib/public/activity/iconsumer.php | 29 ++++++++++++++++++++++ lib/public/activity/imanager.php | 41 +++++++++++++++++++++++++++++++ lib/public/iservercontainer.php | 7 ++++++ 3 files changed, 77 insertions(+) create mode 100644 lib/public/activity/iconsumer.php create mode 100644 lib/public/activity/imanager.php diff --git a/lib/public/activity/iconsumer.php b/lib/public/activity/iconsumer.php new file mode 100644 index 00000000000..4b82bc01b05 --- /dev/null +++ b/lib/public/activity/iconsumer.php @@ -0,0 +1,29 @@ +. + * + */ + + +namespace OCP\Activity; + +interface IConsumer { + function receive($app, $subject, $message, $file, $link); +} + diff --git a/lib/public/activity/imanager.php b/lib/public/activity/imanager.php new file mode 100644 index 00000000000..da7e9d4b662 --- /dev/null +++ b/lib/public/activity/imanager.php @@ -0,0 +1,41 @@ +. + * + */ + + +namespace OCP\Activity; + +interface IManager { + + function publishActivity($app, $subject, $message, $file, $link); + + /** + * In order to improve lazy loading a closure can be registered which will be called in case + * activity consumers are actually requested + * + * $callable has to return an instance of OCA\Activity\IConsumer + * + * @param string $key + * @param \Closure $callable + */ + function registerConsumer(\Closure $callable); + +} diff --git a/lib/public/iservercontainer.php b/lib/public/iservercontainer.php index 1725b7c74e0..41def099691 100644 --- a/lib/public/iservercontainer.php +++ b/lib/public/iservercontainer.php @@ -76,4 +76,11 @@ interface IServerContainer { */ function getSession(); + /** + * Returns the activity manager + * + * @return \OCP\Activity\IManager + */ + function getActivityManager(); + }