getContainer() public method

Gets the container this builder belongs to
public getContainer ( ) : Container
return FOF30\Container\Container
Exemplo n.º 1
0
 public function build()
 {
     $container = $this->builder->getContainer();
     $view = ucfirst($container->inflector->pluralize($this->viewName));
     $fullPath = $container->getNamespacePrefix($this->getSection()) . 'View\\' . $view . '\\' . ucfirst($this->viewType);
     // Let's remove the last part and use it to create the class name
     $parts = explode('\\', trim($fullPath, '\\'));
     $className = array_pop($parts);
     // Now glue everything together
     $namespace = implode('\\', $parts);
     // Let's be sure that the parent class extends with a backslash
     $baseClass = '\\' . trim(get_class($this->view), '\\');
     $code = '<?php' . PHP_EOL;
     $code .= PHP_EOL;
     $code .= 'namespace ' . $namespace . ';' . PHP_EOL;
     $code .= PHP_EOL;
     $code .= "defined('_JEXEC') or die;" . PHP_EOL;
     $code .= PHP_EOL;
     $code .= 'class ' . $className . ' extends ' . $baseClass . PHP_EOL;
     $code .= '{' . PHP_EOL;
     $code .= PHP_EOL;
     $code .= '}' . PHP_EOL;
     $path = $container->backEndPath;
     if (in_array('Site', $parts)) {
         $path = $container->frontEndPath;
     }
     $path .= '/View/' . $view . '/' . $className . '.php';
     $filesystem = $container->filesystem;
     $filesystem->fileWrite($path, $code);
     return $path;
 }