files = $files; $this->composer = $composer; } /** * Execute the console command. * * @return void */ public function handle() { $table = $this->laravel['config']['queue.failed.table']; $this->replaceMigration( $this->createBaseMigration($table), $table ); $this->components->info('Migration created successfully.'); } /** * Create a base migration file for the table. * * @param string $table * @return string */ protected function createBaseMigration($table = 'failed_jobs') { return $this->laravel['migration.creator']->create( 'create_'.$table.'_table', $this->laravel->databasePath().'/migrations' ); } /** * Replace the generated migration with the failed job table stub. * * @param string $path * @param string $table * @return void */ protected function replaceMigration($path, $table) { $stub = str_replace( '{{table}}', $table, $this->files->get(__DIR__.'/stubs/failed_jobs.stub') ); $this->files->put($path, $stub); } }