/**
  * @param string            $name            The command name e.g. some:command
  * @param ConsumerInterface $consumer        Instance of Consumer. The Consumer is configured to receive the incoming messages.
  * @param LoggerInterface   $logger          Instance of LoggerInterface
  * @param string            $description     Command description. This class is reusable for different consumers. Additional information is useful.
  * @param int               $interval        Interval in seconds. If a message is denied and there is no interval than the server and client may continuously send requests back and forth.
  */
 public function __construct($name, ConsumerInterface $consumer, LoggerInterface $logger = null, $description = '', $interval = 0)
 {
     // Set consumer and interval
     $this->consumer = $consumer;
     $this->interval = (int) $interval;
     // Set description
     $this->setDescription($description);
     parent::__construct($name);
 }
 /**
  * @param string            $name
  * @param ProducerInterface $producer
  * @param LoggerInterface   $logger
  */
 public function __construct($name, ProducerInterface $producer, LoggerInterface $logger = null)
 {
     $this->producer = $producer;
     parent::__construct($name);
 }