Exemplo n.º 1
0
/**
 * Include Autoloader
 */
include APP_PATH . '/config/loader.php';
/**
 * Get config service for use in inline setup below
 */
$config = $di->getConfig();
/**
 * Create a console application
 */
$console = new ConsoleApp($di);
/**
 * Register console modules
 */
$console->registerModules(['cli' => ['className' => '@@namespace@@\\Modules\\Cli\\Module']]);
/**
 * Setup the arguments to use the 'cli' module
 */
$arguments = ['module' => 'cli'];
/**
 * Process the console arguments
 */
foreach ($argv as $k => $arg) {
    if ($k == 1) {
        $arguments['task'] = $arg;
    } elseif ($k == 2) {
        $arguments['action'] = $arg;
    } elseif ($k >= 3) {
        $arguments['params'][] = $arg;
    }
Exemplo n.º 2
0
 public function testModules()
 {
     $this->specify("CLI Console doesn't work with modules", function () {
         $di = new Di();
         $di->set('data', function () {
             return "data";
         });
         $console = new Console();
         $console->setDI($di);
         $expected = ['devtools' => ['className' => 'dummy', 'path' => 'dummy_file']];
         $console->registerModules($expected);
         expect($console->getModules())->equals($expected);
         $userModules = ['front' => ['className' => 'front', 'path' => 'front_file'], 'worker' => ['className' => 'worker', 'path' => 'worker_file']];
         $expected = ['devtools' => ['className' => 'dummy', 'path' => 'dummy_file'], 'front' => ['className' => 'front', 'path' => 'front_file'], 'worker' => ['className' => 'worker', 'path' => 'worker_file']];
         $console->registerModules($userModules, true);
         expect($console->getModules())->equals($expected);
     });
 }
Exemplo n.º 3
0
 public function setModules($modules)
 {
     parent::registerModules($modules);
 }
Exemplo n.º 4
0
 public function cliApp()
 {
     $console = new ConsoleApp();
     $console->setDI(Bootstrap::get()->cliDi());
     $console->registerModules(Bootstrap::get()->modules());
     return $console;
 }
Exemplo n.º 5
0
 /**
  * Register an array of modules present in the application
  *
  *<code>
  *	$this->registerModules(array(
  *		'frontend' => array(
  *			'className' => 'Multiple\Frontend\Module',
  *			'path' => 'app/frontend/Module.php'
  *		),
  *		'backend' => array(
  *			'className' => 'Multiple\Backend\Module',
  *			'path' => '../apps/backend/Module.php'
  *		)
  *	));
  *</code>
  *
  * @param array $modules
  */
 public function registerModules($modules)
 {
     $this->registerSharedData($modules);
     parent::registerModules($modules);
 }