コード例 #1
0
 /**
  * Logic that will be executed when command is visited
  *
  * @param AbstractCommand $command
  * @param int             $depth
  *
  * @return mixed
  */
 function process(AbstractCommand $command, $depth = 0)
 {
     if ($command->getArgument() != $this->argumentsContainer->getArgumentAt($depth)) {
         return;
     }
     if (count($command->getChildCommands()) == 0) {
         $command->execute($this->argumentsContainer);
         $this->stop();
     } elseif ($this->argumentsContainer->getArgumentsCount() - 1 == $depth) {
         $command->execute($this->argumentsContainer);
         $this->stop();
     }
 }