Example #1
0
 /**
  * @param Container $container
  * @return Build
  */
 public function create(Container $container, array $arguments = NULL)
 {
     $class = $container->getClass();
     if (!class_exists($class, TRUE)) {
         $this->log(sprintf("Build class '%s' was not found." . PHP_EOL . "Are you in correct working directory?" . PHP_EOL . "Did you forget add bootstrap.php with class loading into working directory?" . PHP_EOL . "Did you forget to load class %s?", $class, $class), 'red');
         throw new TerminateException(NULL, 255);
     }
     $build = new $class($container, $arguments);
     if (!$build instanceof IBuild) {
         throw new Exception("Instance of build does not implements interface IBuild.");
     }
     $this->autowire($build, $container);
     $build->setup();
     return $build;
 }