6 use Elgg\Traits\Loggable;
8 use Symfony\Component\Console\Helper\FormatterHelper;
9 use Symfony\Component\Console\Helper\QuestionHelper;
10 use Symfony\Component\Console\Input\InputInterface;
11 use Symfony\Component\Console\Output\OutputInterface;
12 use Symfony\Component\Console\Question\Question;
13 use Symfony\Component\VarDumper\VarDumper;
18 abstract class BaseCommand extends \Symfony\Component\Console\Command\Command {
46 $helper = $this->getHelper(
'question');
48 $question = trim($question);
49 $question = rtrim($question,
':');
51 $question .=
" [{$default}]";
56 $q =
new Question($question,
$default);
60 $q->setHiddenFallback(
false);
68 $q->setMaxAttempts(2);
71 return $helper->ask($this->input, $this->output, $q);
85 VarDumper::dump(
$data);
97 $formatter = new FormatterHelper();
99 if (!$this->output->getFormatter()->hasStyle(
$style)) {
100 elgg_deprecated_notice(__METHOD__ .
" using '{$style}' needs to be a supported style, use [info, error, comment or question]",
'6.3');
103 case LogLevel::EMERGENCY:
104 case LogLevel::CRITICAL:
105 case LogLevel::ALERT:
106 case LogLevel::ERROR:
110 case LogLevel::WARNING:
160 return $this->input->getOption(
$name);
171 return $this->input->getArgument(
$name);
183 if (empty($answer)) {
197 foreach ($registers as $prop => $values) {
198 if (!empty($values)) {
199 foreach ($values as $msg) {
200 $prop ===
'error' ? $this->write($msg,
'error') : $this->write($msg);
if(! $user||! $user->canDelete()) $name
if(! $entity instanceof \ElggUser) $data
Adds interaction to a console command.
option($name)
Returns option value.
dump($data)
Dump a variable.
ask($question, $default=null, $hidden=false, $required=true)
Ask a question.
assertNotEmpty($answer)
Question validator for required user response.
write($messages, $style='info')
Write messages to output buffer.
dumpRegisters()
Dump and output system and error messages.
notice($message)
Print a notice.
error($message)
Print an error.
argument($name)
Returns argument value.
Exception thrown if an error which can only be found on runtime occurs.
elgg_deprecated_notice(string $msg, string $dep_version)
Log a notice about deprecated use of a function, view, etc.
elgg_log($message, $level=\Psr\Log\LogLevel::NOTICE)
Log a message.
_elgg_services()
Get the global service provider.