Beispiel #1
0
 /**
  * Check that the given options contain all required keys.
  *
  * @param array $options
  * @param array $keys
  *
  * @return void
  *
  * @throws CommandException
  *  If any required options are missing.
  */
 private function checkRequired(array $options, array $keys)
 {
     $missing = array_keys(array_diff_key(array_flip($keys), $options));
     if (!empty($missing)) {
         throw CommandException::missingOptions($missing);
     }
 }
Beispiel #2
0
 /**
  * @inheritDoc
  *
  * @return array
  */
 public function options()
 {
     $required = $this->requiredOptions();
     if ($required) {
         $missing = array_diff($required, array_keys($this->options));
         if ($missing) {
             throw CommandException::missingOptions($missing);
         }
     }
     $this->options += $this->defaultOptions();
     return $this->options;
 }