/**
  * @param Message    $message
  * @param Connection $connection
  */
 public function process(Message $message, Connection $connection)
 {
     switch ($message->getType()) {
         case 'HELLO':
             $this->processHelloMessage($message, $connection);
             break;
         default:
             $this->printer->printMessage($connection, $message);
             break;
     }
 }
 public function printMessage(Connection $connection, Message $message)
 {
     $output = sprintf($this->template, $connection->getId(), $connection->getDeviceName(), $message->getType(), $message->getContent());
     echo $output;
 }
 /**
  * @param Connection $connection
  * @param Message    $message
  */
 public function printMessage(Connection $connection, Message $message)
 {
     $output = sprintf($this->template, $connection->getId(), $connection->getDeviceName(), $this->colorsRepository->getColoredString($message->getType(), $this->getColorForType($message->getType())), $message->getContent());
     echo $output;
 }