diff --git a/src/Bootstrappers/BroadcastChannelPrefixBootstrapper.php b/src/Bootstrappers/BroadcastChannelPrefixBootstrapper.php index 12923fb7..9a6f588e 100644 --- a/src/Bootstrappers/BroadcastChannelPrefixBootstrapper.php +++ b/src/Bootstrappers/BroadcastChannelPrefixBootstrapper.php @@ -49,7 +49,7 @@ class BroadcastChannelPrefixBootstrapper implements TenancyBootstrapper // Delete the cached broadcaster, so that the manager uses the new one $this->broadcastManager->purge($broadcaster); - $broadcasterOverride(); + $broadcasterOverride($this->broadcastManager); // Get the overriden broadcaster $newBroadcaster = $this->broadcastManager->driver($broadcaster); @@ -83,10 +83,8 @@ class BroadcastChannelPrefixBootstrapper implements TenancyBootstrapper */ public static function pusher(Closure|null $override = null): void { - static::$broadcasterOverrides['pusher'] = $override ?? function () { - $broadcastManager = app(BroadcastManager::class); - - return $broadcastManager->extend('pusher', function ($app, $config) use ($broadcastManager) { + static::$broadcasterOverrides['pusher'] = $override ?? function (BroadcastManager $broadcastManager): void { + $broadcastManager->extend('pusher', function ($app, $config) use ($broadcastManager) { return new class($broadcastManager->pusher($config)) extends PusherBroadcaster { protected function formatChannels(array $channels) { @@ -125,10 +123,8 @@ class BroadcastChannelPrefixBootstrapper implements TenancyBootstrapper */ public static function ably(Closure|null $override = null): void { - static::$broadcasterOverrides['ably'] = $override ?? function () { - $broadcastManager = app(BroadcastManager::class); - - return $broadcastManager->extend('ably', function ($app, $config) use ($broadcastManager) { + static::$broadcasterOverrides['ably'] = $override ?? function (BroadcastManager $broadcastManager): void { + $broadcastManager->extend('ably', function ($app, $config) use ($broadcastManager) { return new class($broadcastManager->ably($config)) extends AblyBroadcaster { protected function formatChannels(array $channels) { diff --git a/tests/BootstrapperTest.php b/tests/BootstrapperTest.php index ba87e717..588ca017 100644 --- a/tests/BootstrapperTest.php +++ b/tests/BootstrapperTest.php @@ -788,8 +788,8 @@ test('BroadcastChannelPrefixBootstrapper prefixes the channels events are broadc // Set up the 'testing' broadcaster override // Identical to the default Pusher override (BroadcastChannelPrefixBootstrapper::pusher()) // Except for the parent class (TestingBroadcaster instead of PusherBroadcaster) - BroadcastChannelPrefixBootstrapper::$broadcasterOverrides['testing'] = function () { - return app(BroadcastManager::class)->extend('testing', function ($app, $config) { + BroadcastChannelPrefixBootstrapper::$broadcasterOverrides['testing'] = function (BroadcastManager $broadcastManager) { + $broadcastManager->extend('testing', function ($app, $config) { return new class('tenant broadcaster') extends TestingBroadcaster { protected function formatChannels(array $channels) {