/** * Generate file. * * @param FileGenerator $generator * @param string $path * @param string $fqcn * * @return bool */ protected function generateFile(FileGenerator $generator, $path, $fqcn) { list($namespace, $class) = $this->splitFullQualifyClassName($fqcn); return $generator->file($path)->template($this->getStub(), ['namespace' => $namespace, 'class' => $class, 'table' => $this->option('create') ?: $this->option('update')]); }
/** * Generate file. * * @param \Jumilla\Generators\FileGenerator $generator * @param string $path * @param string $fqcn * * @return bool */ protected function generateFile(FileGenerator $generator, $path, $fqcn) { list($namespace, $class) = $this->splitFullQualifyClassName($fqcn); return $generator->file($path)->template($this->getStub(), ['namespace' => $namespace, 'root_namespace' => $this->getAppNamespace(), 'class' => $class]); }
protected function generateGenerator(FileGenerator $generator, array $properties) { $generator->directory('classes', function ($generator) use($properties) { $generator->directory('Providers')->file('AddonServiceProvider.php')->template('AddonServiceProvider.php', $properties); }); $generator->directory('config', function ($generator) use($properties) { $generator->file('commands.php')->template('commands.php', $properties); }); $generator->templateDirectory('stubs'); $this->generateAddonConfig($generator, $properties['namespace'], ['namespace' => new Constant('__NAMESPACE__'), 'directories' => ['classes'], 'paths' => ['config' => 'config'], 'providers' => [new ClassName('Providers\\AddonServiceProvider')]]); }