diff --git a/src/Illuminate/Broadcasting/InteractsWithBroadcasting.php b/src/Illuminate/Broadcasting/InteractsWithBroadcasting.php index 48fcba6bf802..91a1cb7cd18e 100644 --- a/src/Illuminate/Broadcasting/InteractsWithBroadcasting.php +++ b/src/Illuminate/Broadcasting/InteractsWithBroadcasting.php @@ -4,6 +4,8 @@ use Illuminate\Support\Arr; +use function Illuminate\Support\enum_value; + trait InteractsWithBroadcasting { /** @@ -16,11 +18,13 @@ trait InteractsWithBroadcasting /** * Broadcast the event using a specific broadcaster. * - * @param array|string|null $connection + * @param array|string|null|\UnitEnum $connection * @return $this */ public function broadcastVia($connection = null) { + $connection = enum_value($connection); + $this->broadcastConnection = is_null($connection) ? [null] : Arr::wrap($connection); diff --git a/src/Illuminate/Broadcasting/PendingBroadcast.php b/src/Illuminate/Broadcasting/PendingBroadcast.php index 0d1298e07111..0c7b9b66e271 100644 --- a/src/Illuminate/Broadcasting/PendingBroadcast.php +++ b/src/Illuminate/Broadcasting/PendingBroadcast.php @@ -4,6 +4,8 @@ use Illuminate\Contracts\Events\Dispatcher; +use function Illuminate\Support\enum_value; + class PendingBroadcast { /** @@ -35,13 +37,13 @@ public function __construct(Dispatcher $events, $event) /** * Broadcast the event using a specific broadcaster. * - * @param string|null $connection + * @param string|null|\UnitEnum $connection * @return $this */ public function via($connection = null) { if (method_exists($this->event, 'broadcastVia')) { - $this->event->broadcastVia($connection); + $this->event->broadcastVia(enum_value($connection)); } return $this; diff --git a/src/Illuminate/Console/Scheduling/Schedule.php b/src/Illuminate/Console/Scheduling/Schedule.php index 17de97bad8cb..22548354e526 100644 --- a/src/Illuminate/Console/Scheduling/Schedule.php +++ b/src/Illuminate/Console/Scheduling/Schedule.php @@ -19,6 +19,8 @@ use Illuminate\Support\Traits\Macroable; use RuntimeException; +use function Illuminate\Support\enum_value; + /** * @mixin \Illuminate\Console\Scheduling\PendingEventAttributes */ @@ -170,14 +172,17 @@ public function command($command, array $parameters = []) * Add a new job callback event to the schedule. * * @param object|string $job - * @param string|null $queue - * @param string|null $connection + * @param string|null|\UnitEnum $queue + * @param string|null|\UnitEnum $connection * @return \Illuminate\Console\Scheduling\CallbackEvent */ public function job($job, $queue = null, $connection = null) { $jobName = $job; + $queue = enum_value($queue); + $connection = enum_value($connection); + if (! is_string($job)) { $jobName = method_exists($job, 'displayName') ? $job->displayName() diff --git a/src/Illuminate/Contracts/Filesystem/Factory.php b/src/Illuminate/Contracts/Filesystem/Factory.php index d0f9cd2bbfae..2f9e612ff629 100644 --- a/src/Illuminate/Contracts/Filesystem/Factory.php +++ b/src/Illuminate/Contracts/Filesystem/Factory.php @@ -7,7 +7,7 @@ interface Factory /** * Get a filesystem implementation. * - * @param string|null $name + * @param \UnitEnum|string|null $name * @return \Illuminate\Contracts\Filesystem\Filesystem */ public function disk($name = null); diff --git a/src/Illuminate/Contracts/Redis/Factory.php b/src/Illuminate/Contracts/Redis/Factory.php index c2bfe81f9888..3562a8c3bab7 100644 --- a/src/Illuminate/Contracts/Redis/Factory.php +++ b/src/Illuminate/Contracts/Redis/Factory.php @@ -7,7 +7,7 @@ interface Factory /** * Get a Redis connection by name. * - * @param string|null $name + * @param string|null|\UnitEnum $name * @return \Illuminate\Redis\Connections\Connection */ public function connection($name = null); diff --git a/src/Illuminate/Database/Connection.php b/src/Illuminate/Database/Connection.php index a883e3edb22e..fed6acc10e55 100755 --- a/src/Illuminate/Database/Connection.php +++ b/src/Illuminate/Database/Connection.php @@ -25,6 +25,8 @@ use PDOStatement; use RuntimeException; +use function Illuminate\Support\enum_value; + class Connection implements ConnectionInterface { use DetectsConcurrencyErrors, @@ -307,13 +309,13 @@ public function getSchemaBuilder() /** * Begin a fluent query against a database table. * - * @param \Closure|\Illuminate\Database\Query\Builder|\Illuminate\Contracts\Database\Query\Expression|string $table + * @param \Closure|\Illuminate\Database\Query\Builder|\Illuminate\Contracts\Database\Query\Expression|\UnitEnum|string $table * @param string|null $as * @return \Illuminate\Database\Query\Builder */ public function table($table, $as = null) { - return $this->query()->from($table, $as); + return $this->query()->from(enum_value($table), $as); } /** diff --git a/src/Illuminate/Database/ConnectionInterface.php b/src/Illuminate/Database/ConnectionInterface.php index 288adb4206e3..b28c63f9c25b 100755 --- a/src/Illuminate/Database/ConnectionInterface.php +++ b/src/Illuminate/Database/ConnectionInterface.php @@ -9,7 +9,7 @@ interface ConnectionInterface /** * Begin a fluent query against a database table. * - * @param \Closure|\Illuminate\Database\Query\Builder|string $table + * @param \Closure|\Illuminate\Database\Query\Builder|\UnitEnum|string $table * @param string|null $as * @return \Illuminate\Database\Query\Builder */ diff --git a/src/Illuminate/Database/ConnectionResolverInterface.php b/src/Illuminate/Database/ConnectionResolverInterface.php index b31e5a792565..47161d37d69f 100755 --- a/src/Illuminate/Database/ConnectionResolverInterface.php +++ b/src/Illuminate/Database/ConnectionResolverInterface.php @@ -7,7 +7,7 @@ interface ConnectionResolverInterface /** * Get a database connection instance. * - * @param string|null $name + * @param \UnitEnum|string|null $name * @return \Illuminate\Database\ConnectionInterface */ public function connection($name = null); diff --git a/src/Illuminate/Database/DatabaseManager.php b/src/Illuminate/Database/DatabaseManager.php index 1315d207eafd..0e702d2a3b2c 100755 --- a/src/Illuminate/Database/DatabaseManager.php +++ b/src/Illuminate/Database/DatabaseManager.php @@ -13,6 +13,8 @@ use PDO; use RuntimeException; +use function Illuminate\Support\enum_value; + /** * @mixin \Illuminate\Database\Connection */ @@ -85,12 +87,12 @@ public function __construct($app, ConnectionFactory $factory) /** * Get a database connection instance. * - * @param string|null $name + * @param string|null|\UnitEnum $name * @return \Illuminate\Database\Connection */ public function connection($name = null) { - $name = $name ?: $this->getDefaultConnection(); + $name = enum_value($name) ?: $this->getDefaultConnection(); [$database, $type] = $this->parseConnectionName($name); diff --git a/src/Illuminate/Filesystem/FilesystemManager.php b/src/Illuminate/Filesystem/FilesystemManager.php index db6f82ddca0a..53372b53f40e 100644 --- a/src/Illuminate/Filesystem/FilesystemManager.php +++ b/src/Illuminate/Filesystem/FilesystemManager.php @@ -21,6 +21,8 @@ use League\Flysystem\UnixVisibility\PortableVisibilityConverter; use League\Flysystem\Visibility; +use function Illuminate\Support\enum_value; + /** * @mixin \Illuminate\Contracts\Filesystem\Filesystem * @mixin \Illuminate\Filesystem\FilesystemAdapter @@ -72,12 +74,12 @@ public function drive($name = null) /** * Get a filesystem instance. * - * @param string|null $name + * @param \UnitEnum|string|null $name * @return \Illuminate\Contracts\Filesystem\Filesystem */ public function disk($name = null) { - $name = $name ?: $this->getDefaultDriver(); + $name = enum_value($name) ?: $this->getDefaultDriver(); return $this->disks[$name] = $this->get($name); } diff --git a/src/Illuminate/Foundation/helpers.php b/src/Illuminate/Foundation/helpers.php index 2580b987cb6c..2025c2c676bd 100644 --- a/src/Illuminate/Foundation/helpers.php +++ b/src/Illuminate/Foundation/helpers.php @@ -27,6 +27,8 @@ use League\Uri\Contracts\UriInterface; use Symfony\Component\HttpFoundation\Response; +use function Illuminate\Support\enum_value; + if (! function_exists('abort')) { /** * Throw an HttpException with the given data. @@ -622,12 +624,12 @@ function mix($path, $manifestDirectory = '') /** * Create a new Carbon instance for the current time. * - * @param \DateTimeZone|string|null $tz + * @param \DateTimeZone|string|null|\UnitEnum $tz * @return \Illuminate\Support\Carbon */ function now($tz = null) { - return Date::now($tz); + return Date::now(enum_value($tz)); } } @@ -968,12 +970,12 @@ function to_route($route, $parameters = [], $status = 302, $headers = []) /** * Create a new Carbon instance for the current date. * - * @param \DateTimeZone|string|null $tz + * @param \DateTimeZone|string|null|\UnitEnum $tz * @return \Illuminate\Support\Carbon */ function today($tz = null) { - return Date::today($tz); + return Date::today(enum_value($tz)); } } diff --git a/src/Illuminate/Redis/RedisManager.php b/src/Illuminate/Redis/RedisManager.php index 7910c9468bbe..160a1103ea5b 100644 --- a/src/Illuminate/Redis/RedisManager.php +++ b/src/Illuminate/Redis/RedisManager.php @@ -11,6 +11,8 @@ use Illuminate\Support\ConfigurationUrlParser; use InvalidArgumentException; +use function Illuminate\Support\enum_value; + /** * @mixin \Illuminate\Redis\Connections\Connection */ @@ -75,12 +77,12 @@ public function __construct($app, $driver, array $config) /** * Get a Redis connection by name. * - * @param string|null $name + * @param string|null|\UnitEnum $name * @return \Illuminate\Redis\Connections\Connection */ public function connection($name = null) { - $name = $name ?: 'default'; + $name = enum_value($name) ?: 'default'; if (isset($this->connections[$name])) { return $this->connections[$name]; diff --git a/src/Illuminate/Support/Facades/DB.php b/src/Illuminate/Support/Facades/DB.php index f1c41bc0abb4..7e342104a8d8 100644 --- a/src/Illuminate/Support/Facades/DB.php +++ b/src/Illuminate/Support/Facades/DB.php @@ -9,7 +9,7 @@ use Illuminate\Database\Console\WipeCommand; /** - * @method static \Illuminate\Database\Connection connection(string|null $name = null) + * @method static \Illuminate\Database\Connection connection(\UnitEnum|string|null $name = null) * @method static \Illuminate\Database\ConnectionInterface build(array $config) * @method static string calculateDynamicConnectionName(array $config) * @method static \Illuminate\Database\ConnectionInterface connectUsing(string $name, array $config, bool $force = false) @@ -35,7 +35,7 @@ * @method static void useDefaultSchemaGrammar() * @method static void useDefaultPostProcessor() * @method static \Illuminate\Database\Schema\Builder getSchemaBuilder() - * @method static \Illuminate\Database\Query\Builder table(\Closure|\Illuminate\Database\Query\Builder|\Illuminate\Contracts\Database\Query\Expression|string $table, string|null $as = null) + * @method static \Illuminate\Database\Query\Builder table(\Closure|\Illuminate\Database\Query\Builder|\Illuminate\Contracts\Database\Query\Expression|\UnitEnum|string $table, string|null $as = null) * @method static \Illuminate\Database\Query\Builder query() * @method static mixed selectOne(string $query, array $bindings = [], bool $useReadPdo = true) * @method static mixed scalar(string $query, array $bindings = [], bool $useReadPdo = true) diff --git a/src/Illuminate/Support/Facades/Redis.php b/src/Illuminate/Support/Facades/Redis.php index b796ad09d325..3f18a839594c 100755 --- a/src/Illuminate/Support/Facades/Redis.php +++ b/src/Illuminate/Support/Facades/Redis.php @@ -3,7 +3,7 @@ namespace Illuminate\Support\Facades; /** - * @method static \Illuminate\Redis\Connections\Connection connection(string|null $name = null) + * @method static \Illuminate\Redis\Connections\Connection connection(\UnitEnum|string|null $name = null) * @method static \Illuminate\Redis\Connections\Connection resolve(string|null $name = null) * @method static array connections() * @method static void enableEvents() diff --git a/src/Illuminate/Support/Facades/Schedule.php b/src/Illuminate/Support/Facades/Schedule.php index f2a36001e2c1..b61a60839f9b 100644 --- a/src/Illuminate/Support/Facades/Schedule.php +++ b/src/Illuminate/Support/Facades/Schedule.php @@ -7,7 +7,7 @@ /** * @method static \Illuminate\Console\Scheduling\CallbackEvent call(string|callable $callback, array $parameters = []) * @method static \Illuminate\Console\Scheduling\Event command(string $command, array $parameters = []) - * @method static \Illuminate\Console\Scheduling\CallbackEvent job(object|string $job, string|null $queue = null, string|null $connection = null) + * @method static \Illuminate\Console\Scheduling\CallbackEvent job(object|string $job, \UnitEnum|string|null $queue = null, \UnitEnum|string|null $connection = null) * @method static \Illuminate\Console\Scheduling\Event exec(string $command, array $parameters = []) * @method static void group(\Closure $events) * @method static string compileArrayInput(string|int $key, array $value) diff --git a/src/Illuminate/Support/Facades/Storage.php b/src/Illuminate/Support/Facades/Storage.php index 3b52951ee617..4b7418ac7ddc 100644 --- a/src/Illuminate/Support/Facades/Storage.php +++ b/src/Illuminate/Support/Facades/Storage.php @@ -6,7 +6,7 @@ /** * @method static \Illuminate\Contracts\Filesystem\Filesystem drive(string|null $name = null) - * @method static \Illuminate\Contracts\Filesystem\Filesystem disk(string|null $name = null) + * @method static \Illuminate\Contracts\Filesystem\Filesystem disk(\UnitEnum|string|null $name = null) * @method static \Illuminate\Contracts\Filesystem\Cloud cloud() * @method static \Illuminate\Contracts\Filesystem\Filesystem build(string|array $config) * @method static \Illuminate\Contracts\Filesystem\Filesystem createLocalDriver(array $config, string $name = 'local')