summaryrefslogtreecommitdiff
path: root/app/ServiceProvider/EventDispatcherProvider.php
diff options
context:
space:
mode:
authorFrédéric Guillot <fred@kanboard.net>2014-12-27 19:10:38 -0500
committerFrédéric Guillot <fred@kanboard.net>2014-12-27 19:10:38 -0500
commit17dc5bdc9ede52ad618bbf326e67e3b6988170f7 (patch)
tree9cf4d325667f11fa735bca84042fb385e3273329 /app/ServiceProvider/EventDispatcherProvider.php
parentcf821e117ce8b937cff7f386a107aaa81ba6bf9b (diff)
Move events handling to Symfony\EventDispatcher
Diffstat (limited to 'app/ServiceProvider/EventDispatcherProvider.php')
-rw-r--r--app/ServiceProvider/EventDispatcherProvider.php28
1 files changed, 28 insertions, 0 deletions
diff --git a/app/ServiceProvider/EventDispatcherProvider.php b/app/ServiceProvider/EventDispatcherProvider.php
new file mode 100644
index 00000000..90210ba6
--- /dev/null
+++ b/app/ServiceProvider/EventDispatcherProvider.php
@@ -0,0 +1,28 @@
+<?php
+
+namespace ServiceProvider;
+
+use Pimple\Container;
+use Pimple\ServiceProviderInterface;
+use Subscriber\NotificationSubscriber;
+use Subscriber\ProjectActivitySubscriber;
+use Subscriber\ProjectDailySummarySubscriber;
+use Subscriber\ProjectModificationDateSubscriber;
+use Subscriber\WebhookSubscriber;
+use Symfony\Component\EventDispatcher\EventDispatcher;
+
+class EventDispatcherProvider implements ServiceProviderInterface
+{
+ public function register(Container $container)
+ {
+ $container['dispatcher'] = new EventDispatcher;
+ $container['dispatcher']->addSubscriber(new ProjectActivitySubscriber($container));
+ $container['dispatcher']->addSubscriber(new ProjectDailySummarySubscriber($container));
+ $container['dispatcher']->addSubscriber(new ProjectModificationDateSubscriber($container));
+ $container['dispatcher']->addSubscriber(new WebhookSubscriber($container));
+ $container['dispatcher']->addSubscriber(new NotificationSubscriber($container));
+
+ // Automatic actions
+ $container['action']->attachEvents();
+ }
+}