/**
  * {@inheritDoc}
  */
 public function declareQueue(QueueDefinition $queue)
 {
     try {
         $this->getChannel()->queue_declare($queue->getName(), false, $queue->isDurable(), $queue->isExclusive(), $queue->isAutoDeleted(), false, $queue->getArguments());
     } catch (\Exception $e) {
         throw new DriverException('Queue declare error', $e);
     }
 }
 /**
  * {@inheritDoc}
  */
 public function declareQueue(QueueDefinition $queue)
 {
     $queueObject = $this->getQueue($queue->getName());
     $flags = AMQP_DURABLE * $queue->isDurable() | AMQP_AUTODELETE * $queue->isAutoDeleted() | AMQP_EXCLUSIVE * $queue->isExclusive();
     $queueObject->setFlags($flags);
     $queueObject->declareQueue();
 }