From 291f6ced87b7b228ca1f468c9d94b504862db447 Mon Sep 17 00:00:00 2001 From: Ron Rise Date: Tue, 11 Nov 2025 10:58:46 -0500 Subject: [PATCH] feat: add event dispatcher facade and service provider --- src/Kernel.php | 8 +++-- src/Services/Facades/Dispatcher.php | 35 +++++++++++++++++++ .../DispatcherServiceProvider.php | 18 ++++++++++ 3 files changed, 58 insertions(+), 3 deletions(-) create mode 100644 src/Services/Facades/Dispatcher.php create mode 100644 src/Services/ServiceProviders/DispatcherServiceProvider.php diff --git a/src/Kernel.php b/src/Kernel.php index 4b78332..e7cb9e5 100644 --- a/src/Kernel.php +++ b/src/Kernel.php @@ -6,9 +6,10 @@ use Illuminate\Container\Container; use Illuminate\Database\Capsule\Manager; use Illuminate\Support\ServiceProvider; use Siteworx\Config\Config as SWConfig; -use Siteworxpro\App\Events\Dispatcher; use Siteworxpro\App\Services\Facade; use Siteworxpro\App\Services\Facades\Config; +use Siteworxpro\App\Services\Facades\Dispatcher; +use Siteworxpro\App\Services\ServiceProviders\DispatcherServiceProvider; use Siteworxpro\App\Services\ServiceProviders\LoggerServiceProvider; use Siteworxpro\App\Services\ServiceProviders\RedisServiceProvider; @@ -16,7 +17,8 @@ class Kernel { private static array $serviceProviders = [ LoggerServiceProvider::class, - RedisServiceProvider::class + RedisServiceProvider::class, + DispatcherServiceProvider::class, ]; /** @@ -70,7 +72,7 @@ class Kernel private static function bootModelCapsule(): void { $capsule = new Manager(); - $capsule->setEventDispatcher(new Dispatcher()); + $capsule->setEventDispatcher(Dispatcher::getFacadeRoot()); $capsule->addConnection(Config::get('db')); $capsule->setAsGlobal(); $capsule->bootEloquent(); diff --git a/src/Services/Facades/Dispatcher.php b/src/Services/Facades/Dispatcher.php new file mode 100644 index 0000000..9fec1dd --- /dev/null +++ b/src/Services/Facades/Dispatcher.php @@ -0,0 +1,35 @@ +app->singleton(Dispatcher::class, function () { + return new Dispatcher(); + }); + } +}