_Shell = $Shell; } /** * Resolve a task classname. * * Part of the template method for Cake\Core\ObjectRegistry::load() * * @param string $class Partial classname to resolve. * @return string|false Either the correct classname or false. */ protected function _resolveClassName($class) { return App::className($class, 'Shell/Task', 'Task'); } /** * Throws an exception when a task is missing. * * Part of the template method for Cake\Core\ObjectRegistry::load() * * @param string $class The classname that is missing. * @param string $plugin The plugin the task is missing in. * @return void * @throws \Cake\Console\Exception\MissingTaskException */ protected function _throwMissingClassError($class, $plugin) { throw new MissingTaskException([ 'class' => $class, 'plugin' => $plugin ]); } /** * Create the task instance. * * Part of the template method for Cake\Core\ObjectRegistry::load() * * @param string $class The classname to create. * @param string $alias The alias of the task. * @param array $settings An array of settings to use for the task. * @return \Cake\Console\Shell The constructed task class. */ protected function _create($class, $alias, $settings) { return new $class($this->_Shell->io()); } }