From ed3d5b25e48e083fb60aea592819754e7a9bc613 Mon Sep 17 00:00:00 2001 From: Alexander Skvortsov Date: Tue, 8 Dec 2020 13:00:55 -0500 Subject: [PATCH] Properly use ServiceProvider extender --- extensions/pusher/extend.php | 23 ++------------- .../pusher/src/Provider/PusherProvider.php | 29 +++++++++++++++++++ 2 files changed, 32 insertions(+), 20 deletions(-) create mode 100644 extensions/pusher/src/Provider/PusherProvider.php diff --git a/extensions/pusher/extend.php b/extensions/pusher/extend.php index eaf12229b..b90a3053b 100644 --- a/extensions/pusher/extend.php +++ b/extensions/pusher/extend.php @@ -11,9 +11,8 @@ use Flarum\Extend; use Flarum\Post\Event\Posted; use Flarum\Pusher\Api\Controller\AuthController; use Flarum\Pusher\Listener; +use Flarum\Pusher\Provider\PusherProvider; use Flarum\Pusher\PusherNotificationDriver; -use Flarum\Settings\SettingsRepositoryInterface; -use Illuminate\Contracts\Container\Container; return [ (new Extend\Frontend('forum')) @@ -38,22 +37,6 @@ return [ (new Extend\Event()) ->listen(Posted::class, Listener\PushNewPost::class), - function (Container $container) { - $container->bind(Pusher::class, function ($app) { - $settings = $app->make(SettingsRepositoryInterface::class); - - $options = []; - - if ($cluster = $settings->get('flarum-pusher.app_cluster')) { - $options['cluster'] = $cluster; - } - - return new Pusher( - $settings->get('flarum-pusher.app_key'), - $settings->get('flarum-pusher.app_secret'), - $settings->get('flarum-pusher.app_id'), - $options - ); - }); - }, + (new Extend\ServiceProvider()) + ->register(PusherProvider::class), ]; diff --git a/extensions/pusher/src/Provider/PusherProvider.php b/extensions/pusher/src/Provider/PusherProvider.php new file mode 100644 index 000000000..7648c9162 --- /dev/null +++ b/extensions/pusher/src/Provider/PusherProvider.php @@ -0,0 +1,29 @@ +app->bind(\Pusher::class, function () { + $settings = $this->app->make(SettingsRepositoryInterface::class); + + $options = []; + + if ($cluster = $settings->get('flarum-pusher.app_cluster')) { + $options['cluster'] = $cluster; + } + + return new \Pusher( + $settings->get('flarum-pusher.app_key'), + $settings->get('flarum-pusher.app_secret'), + $settings->get('flarum-pusher.app_id'), + $options + ); + }); + } +}