collection()) { $this->type = 'Resource collection'; } parent::handle(); } /** * Get the stub file for the generator. * * @return string */ protected function getStub() { return $this->collection() ? __DIR__.'/stubs/resource-collection.stub' : __DIR__.'/stubs/resource.stub'; } /** * Determine if the command is generating a resource collection. * * @return bool */ protected function collection() { return $this->option('collection') || Str::endsWith($this->argument('name'), 'Collection'); } /** * Get the default namespace for the class. * * @param string $rootNamespace * @return string */ protected function getDefaultNamespace($rootNamespace) { return $rootNamespace.'\Http\Resources'; } /** * Get the console command options. * * @return array */ protected function getOptions() { return [ ['collection', 'c', InputOption::VALUE_NONE, 'Create a resource collection.'], ]; } }