X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FCore%2FConsole.php;h=f43b89e9e67cc1832090d00ad10598a6b40e5bcf;hb=56a77f5275ba8566a37d690ade0e929c88b828e2;hp=0cc63a5913fcef016e217a9d44e927c0b27953c4;hpb=e9c230e109372978d521aeb5133987cd7edecedb;p=friendica.git diff --git a/src/Core/Console.php b/src/Core/Console.php index 0cc63a5913..f43b89e9e6 100644 --- a/src/Core/Console.php +++ b/src/Core/Console.php @@ -1,11 +1,31 @@ . + * + */ namespace Friendica\Core; +use Dice\Dice; +use Friendica; + /** * Description of Console - * - * @author Hypolite Petovan */ class Console extends \Asika\SimpleConsole\Console { @@ -13,6 +33,11 @@ class Console extends \Asika\SimpleConsole\Console protected $helpOptions = []; protected $customHelpOptions = ['h', 'help', '?']; + /** + * @var Dice The DI library + */ + protected $dice; + protected function getHelp() { $help = << __NAMESPACE__ . '\Console\Cache', - 'config' => __NAMESPACE__ . '\Console\Config', - 'createdoxygen' => __NAMESPACE__ . '\Console\CreateDoxygen', - 'docbloxerrorchecker' => __NAMESPACE__ . '\Console\DocBloxErrorChecker', - 'dbstructure' => __NAMESPACE__ . '\Console\DatabaseStructure', - 'extract' => __NAMESPACE__ . '\Console\Extract', - 'globalcommunityblock' => __NAMESPACE__ . '\Console\GlobalCommunityBlock', - 'globalcommunitysilence' => __NAMESPACE__ . '\Console\GlobalCommunitySilence', - 'archivecontact' => __NAMESPACE__ . '\Console\ArchiveContact', - 'autoinstall' => __NAMESPACE__ . '\Console\AutomaticInstallation', - 'maintenance' => __NAMESPACE__ . '\Console\Maintenance', - 'newpassword' => __NAMESPACE__ . '\Console\NewPassword', - 'php2po' => __NAMESPACE__ . '\Console\PhpToPo', - 'po2php' => __NAMESPACE__ . '\Console\PoToPhp', - 'typo' => __NAMESPACE__ . '\Console\Typo', - 'postupdate' => __NAMESPACE__ . '\Console\PostUpdate', - 'serverblock' => __NAMESPACE__ . '\Console\ServerBlock', - 'storage' => __NAMESPACE__ . '\Console\Storage', + 'cache' => Friendica\Console\Cache::class, + 'config' => Friendica\Console\Config::class, + 'createdoxygen' => Friendica\Console\CreateDoxygen::class, + 'docbloxerrorchecker' => Friendica\Console\DocBloxErrorChecker::class, + 'dbstructure' => Friendica\Console\DatabaseStructure::class, + 'extract' => Friendica\Console\Extract::class, + 'globalcommunityblock' => Friendica\Console\GlobalCommunityBlock::class, + 'globalcommunitysilence' => Friendica\Console\GlobalCommunitySilence::class, + 'archivecontact' => Friendica\Console\ArchiveContact::class, + 'autoinstall' => Friendica\Console\AutomaticInstallation::class, + 'lock' => Friendica\Console\Lock::class, + 'maintenance' => Friendica\Console\Maintenance::class, + 'user' => Friendica\Console\User::class, + 'php2po' => Friendica\Console\PhpToPo::class, + 'po2php' => Friendica\Console\PoToPhp::class, + 'typo' => Friendica\Console\Typo::class, + 'postupdate' => Friendica\Console\PostUpdate::class, + 'serverblock' => Friendica\Console\ServerBlock::class, + 'storage' => Friendica\Console\Storage::class, + 'relay' => Friendica\Console\Relay::class, + 'fixapdeliveryworkertaskparameters' => Friendica\Console\FixAPDeliveryWorkerTaskParameters::class, ]; + /** + * CliInput Friendica constructor. + * + * @param Dice $dice The DI library + * @param array $argv + */ + public function __construct(Dice $dice, array $argv = null) + { + parent::__construct($argv); + + $this->dice = $dice; + } + protected function doExecute() { if ($this->getOption('v')) { @@ -123,8 +166,10 @@ HELP; $className = $this->subConsoles[$command]; + Friendica\DI::init($this->dice); + /** @var Console $subconsole */ - $subconsole = new $className($subargs); + $subconsole = $this->dice->create($className, [$subargs]); foreach ($this->options as $name => $value) { $subconsole->setOption($name, $value);