From 18b17b45fbd0fb050a9d7827efb98797b25a8dfb Mon Sep 17 00:00:00 2001 From: Philip Iezzi Date: Thu, 21 Mar 2024 18:00:50 +0100 Subject: [PATCH 1/2] Register event listeners directly in AuditingServiceProvider for L11 compatibility Eliminate AuditingEventServiceProvider which interfered with L11 event auto-discovery, EventServiceProvider::shouldDiscoverEvents() --- src/AuditingEventServiceProvider.php | 38 ---------------------------- src/AuditingServiceProvider.php | 13 +++++++--- 2 files changed, 10 insertions(+), 41 deletions(-) delete mode 100644 src/AuditingEventServiceProvider.php diff --git a/src/AuditingEventServiceProvider.php b/src/AuditingEventServiceProvider.php deleted file mode 100644 index 19c04624..00000000 --- a/src/AuditingEventServiceProvider.php +++ /dev/null @@ -1,38 +0,0 @@ - [ - RecordCustomAudit::class, - ], - DispatchAudit::class => [ - ProcessDispatchAudit::class, - ], - ]; - - /** - * Register any events for your application. - * - * @return void - */ - public function boot() - { - parent::boot(); - } -} diff --git a/src/AuditingServiceProvider.php b/src/AuditingServiceProvider.php index 4d2d3860..39eed1e1 100644 --- a/src/AuditingServiceProvider.php +++ b/src/AuditingServiceProvider.php @@ -2,12 +2,16 @@ namespace OwenIt\Auditing; -use Illuminate\Contracts\Support\DeferrableProvider; +use Illuminate\Contracts\Events\Dispatcher as DispatcherContract; use Illuminate\Support\ServiceProvider; use OwenIt\Auditing\Console\AuditDriverCommand; use OwenIt\Auditing\Console\AuditResolverCommand; use OwenIt\Auditing\Console\InstallCommand; use OwenIt\Auditing\Contracts\Auditor; +use OwenIt\Auditing\Events\AuditCustom; +use OwenIt\Auditing\Events\DispatchAudit; +use OwenIt\Auditing\Listeners\ProcessDispatchAudit; +use OwenIt\Auditing\Listeners\RecordCustomAudit; class AuditingServiceProvider extends ServiceProvider { @@ -20,6 +24,11 @@ public function boot() { $this->registerPublishing(); $this->mergeConfigFrom(__DIR__ . '/../config/audit.php', 'audit'); + + /** @var DispatcherContract $events */ + $events = app('events'); + $events->listen(AuditCustom::class, RecordCustomAudit::class); + $events->listen(DispatchAudit::class, ProcessDispatchAudit::class); } /** @@ -38,8 +47,6 @@ public function register() $this->app->singleton(Auditor::class, function ($app) { return new \OwenIt\Auditing\Auditor($app); }); - - $this->app->register(AuditingEventServiceProvider::class); } /** From ac0ee1814aeacf7669616831fc40fa1badc0495a Mon Sep 17 00:00:00 2001 From: Philip Iezzi Date: Mon, 22 Apr 2024 21:45:05 +0200 Subject: [PATCH 2/2] Use Event facade to register listeners --- src/AuditingServiceProvider.php | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/AuditingServiceProvider.php b/src/AuditingServiceProvider.php index 39eed1e1..855e724c 100644 --- a/src/AuditingServiceProvider.php +++ b/src/AuditingServiceProvider.php @@ -2,7 +2,7 @@ namespace OwenIt\Auditing; -use Illuminate\Contracts\Events\Dispatcher as DispatcherContract; +use Illuminate\Support\Facades\Event; use Illuminate\Support\ServiceProvider; use OwenIt\Auditing\Console\AuditDriverCommand; use OwenIt\Auditing\Console\AuditResolverCommand; @@ -25,10 +25,8 @@ public function boot() $this->registerPublishing(); $this->mergeConfigFrom(__DIR__ . '/../config/audit.php', 'audit'); - /** @var DispatcherContract $events */ - $events = app('events'); - $events->listen(AuditCustom::class, RecordCustomAudit::class); - $events->listen(DispatchAudit::class, ProcessDispatchAudit::class); + Event::listen(AuditCustom::class, RecordCustomAudit::class); + Event::listen(DispatchAudit::class, ProcessDispatchAudit::class); } /**