From c3328a64282795e3001f1d737c4c2c07e1bf2ca1 Mon Sep 17 00:00:00 2001 From: Alexandru Doras Date: Fri, 29 Jan 2021 15:29:08 +0200 Subject: [PATCH] Replace direct mention of laravel application class by application contract --- .../Database/Eloquent/Factories/Factory.php | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/Illuminate/Database/Eloquent/Factories/Factory.php b/src/Illuminate/Database/Eloquent/Factories/Factory.php index 36f3dad84a8a..e6a2d7707608 100644 --- a/src/Illuminate/Database/Eloquent/Factories/Factory.php +++ b/src/Illuminate/Database/Eloquent/Factories/Factory.php @@ -5,9 +5,9 @@ use Closure; use Faker\Generator; use Illuminate\Container\Container; +use Illuminate\Contracts\Foundation\Application; use Illuminate\Database\Eloquent\Collection as EloquentCollection; use Illuminate\Database\Eloquent\Model; -use Illuminate\Foundation\Application; use Illuminate\Support\Collection; use Illuminate\Support\Str; use Illuminate\Support\Traits\ForwardsCalls; @@ -635,7 +635,7 @@ public function modelName() $resolver = static::$modelNameResolver ?: function (self $factory) { $factoryBasename = Str::replaceLast('Factory', '', class_basename($factory)); - $appNamespace = static::appNamespace(); + $appNamespace = static::appNamespace(Container); return class_exists($appNamespace.'Models\\'.$factoryBasename) ? $appNamespace.'Models\\'.$factoryBasename @@ -710,7 +710,7 @@ protected function withFaker() public static function resolveFactoryName(string $modelName) { $resolver = static::$factoryNameResolver ?: function (string $modelName) { - $appNamespace = static::appNamespace(); + $appNamespace = static::appNamespace(Container); $modelName = Str::startsWith($modelName, $appNamespace.'Models\\') ? Str::after($modelName, $appNamespace.'Models\\') @@ -725,12 +725,13 @@ public static function resolveFactoryName(string $modelName) /** * Get the application namespace for the application. * + * @param $container * @return string */ - protected static function appNamespace() + protected static function appNamespace($container) { try { - return Container::getInstance() + return $container::getInstance() ->make(Application::class) ->getNamespace(); } catch (Throwable $e) {