Esempio n. 1
0
 /**
  * Prepares the console application.
  *
  * @param  string               $filename
  * @param  \Auryn\Injector|null $injector
  * @param  string|null          $directory
  * @return \Rougin\Blueprint\Blueprint
  */
 public static function boot($filename, \Auryn\Injector $injector = null, $directory = null)
 {
     list($directory, $injector) = self::prepareArguments($directory, $injector);
     // Add League's Flysystem to injector
     $folder = new \League\Flysystem\Adapter\Local($directory);
     $system = new \League\Flysystem\Filesystem($folder);
     $injector->share($system);
     // Define the Blueprint instance
     $application = new \Symfony\Component\Console\Application(self::$name, self::$version);
     $blueprint = new \Rougin\Blueprint\Blueprint($application, $injector);
     // Sets the path to default in Blueprint
     if (!file_exists($filename)) {
         $blueprint->setCommandPath(__DIR__ . '/Commands');
         $blueprint->setCommandNamespace('Rougin\\Blueprint\\Commands');
         return $blueprint;
     }
     return self::preparePaths($blueprint, $filename);
 }