diff --git a/src/EventServiceProvider.php b/src/EventServiceProvider.php index e9bba0a..fbbcc57 100644 --- a/src/EventServiceProvider.php +++ b/src/EventServiceProvider.php @@ -2,7 +2,9 @@ namespace Laravel\Cashier; -use Illuminate\Foundation\Support\Providers\EventServiceProvider as ServiceProvider; + +use Illuminate\Contracts\Events\Dispatcher; +use Illuminate\Support\ServiceProvider; use Laravel\Cashier\Order\OrderInvoiceSubscriber; class EventServiceProvider extends ServiceProvider @@ -15,4 +17,16 @@ class EventServiceProvider extends ServiceProvider protected $subscribe = [ OrderInvoiceSubscriber::class, ]; + + /** + * Bootstrap any application services. + * + * @param Dispatcher $events + * @return void + */ + public function boot(Dispatcher $events) + { + collect($this->subscribe) + ->each(fn(string $subscriber) => $events->subscribe($subscriber)); + } } diff --git a/src/Order/OrderInvoiceSubscriber.php b/src/Order/OrderInvoiceSubscriber.php index f826958..8b61d9a 100644 --- a/src/Order/OrderInvoiceSubscriber.php +++ b/src/Order/OrderInvoiceSubscriber.php @@ -32,14 +32,9 @@ public function handleOrderPaymentPaid($event) */ public function subscribe($events) { - $events->listen( - OrderPaymentPaid::class, - self::class.'@handleOrderPaymentPaid' - ); - - $events->listen( - FirstPaymentPaid::class, - self::class.'@handleFirstPaymentPaid' - ); + return [ + OrderPaymentPaid::class => 'handleOrderPaymentPaid', + FirstPaymentPaid::class => 'handleFirstPaymentPaid', + ]; } }