N98\Magento\Command\System\Cron\RunCommand::askJobCode PHP Method

askJobCode() protected method

protected askJobCode ( Symfony\Component\Console\Output\OutputInterface $output, array $jobs ) : string
$output Symfony\Component\Console\Output\OutputInterface
$jobs array array of array containing "job" keyed string entries of job-codes
return string job-code
    protected function askJobCode(OutputInterface $output, array $jobs)
    {
        $index = 0;
        $keyMap = array_keys($jobs);
        $question = array();
        foreach ($jobs as $key => $job) {
            $question[] = '<comment>[' . $index++ . ']</comment> ' . $job['Job'] . PHP_EOL;
        }
        $question[] = '<question>Please select job: </question>' . PHP_EOL;
        /** @var $dialogHelper DialogHelper */
        $dialogHelper = $this->getHelper('dialog');
        $jobCode = $dialogHelper->askAndValidate($output, $question, function ($typeInput) use($keyMap, $jobs) {
            $key = $keyMap[$typeInput];
            if (!isset($jobs[$key])) {
                throw new InvalidArgumentException('Invalid job');
            }
            return $jobs[$key]['Job'];
        });
        return $jobCode;
    }