diff --git a/laravel/cli/tasks/session/manager.php b/laravel/cli/tasks/session/manager.php index 2095a881..ebf30a0c 100644 --- a/laravel/cli/tasks/session/manager.php +++ b/laravel/cli/tasks/session/manager.php @@ -5,9 +5,7 @@ use Laravel\File; use Laravel\Config; use Laravel\Session; use Laravel\CLI\Tasks\Task; -use Laravel\Database\Schema; use Laravel\Session\Drivers\Sweeper; -use Laravel\CLI\Tasks\Migrate\Migrator; class Manager extends Task { @@ -37,18 +35,10 @@ class Manager extends Task { File::put($migration, File::get($stub)); - // By default no session driver is specified in the configuration. + // By default no session driver is set within the configuration. // Since the developer is requesting that the session table be - // created on the database, we'll set the driver. - $config = File::get(path('app').'config/session'.EXT); - - $config = str_replace( - "'driver' => '',", - "'driver' => 'database',", - $config - ); - - File::put(path('app').'config/session'.EXT, $config); + // created on the database, we'll set it. + $this->driver('database'); echo PHP_EOL; @@ -65,9 +55,9 @@ class Manager extends Task { { $driver = Session::factory(Config::get('session.driver')); - // If the driver implements the "Sweeper" interface, we know that - // it can sweep expired sessions from storage. Not all drivers - // need be sweepers since they do their own. + // If the driver implements the "Sweeper" interface, we know that it + // can sweep expired sessions from storage. Not all drivers need be + // sweepers since they do their own. if ($driver instanceof Sweeper) { $lifetime = Config::get('session.lifetime'); @@ -78,4 +68,26 @@ class Manager extends Task { echo "The session table has been swept!"; } + /** + * Set the session driver to a given value. + * + * @param string $driver + * @return void + */ + protected function driver($driver) + { + // By default no session driver is set within the configuration. + // This method will replace the empty driver option with the + // driver specified in the arguments. + $config = File::get(path('app').'config/session'.EXT); + + $config = str_replace( + "'driver' => '',", + "'driver' => 'database',", + $config + ); + + File::put(path('app').'config/session'.EXT, $config); + } + } \ No newline at end of file