/** * Execute module * * @param string $module * @return void */ private function executeModule($module) { // pass original vars in to module constructor $this->abstractModule = new $module($this->argc, $this->argv); $lock = $this->abstractModule->isLocked(); if ($lock === false) { $this->abstractModule->setupOptions(); $this->abstractModule->execute(); $this->abstractModule->unlock(); } else { CliColors::render("Process {$lock[0]} already locked at {$lock[1]}", CliColors::FG_WHITE, CliColors::BG_RED, true); } }
/** * Add new customize option * We have to overload parent method AbstractCliModule::loadOptions() */ protected function loadOptions() { // we still want to display default ones, right? parent::loadOptions(); $this->defaultOptions[] = array('options' => array('-s', '--set-option-value'), 'callback' => 'setOption', 'description' => 'Testing my new option description'); }
protected function loadOptions() { parent::loadOptions(); $this->defaultOptions[] = array('options' => array('-t', '--test'), 'callback' => 'testMe', 'description' => 'Test me'); $this->defaultOptions[] = array('options' => array('-n', '--not-exists'), 'callback' => 'notExists', 'description' => 'Test for non existing method'); }