code: @Override
      public int getQueueSize(final String queueName) throws RabbitmqCommunicateException
      {
          RabbitTemplate template = (RabbitTemplate) getTemplatefactory().getAmqpTemplate(queueName);
          QueueSizeCallBack queueSizeCallBack = new QueueSizeCallBack(queueName);
  
          int size = 0;
          try
          {
              size = getQueueSizeAndRetry(template, queueSizeCallBack);
          }
          catch (Exception ex)
          {
              String messageFmt = "QueueName is invalid. QueueName={0}";
              String message = MessageFormat.format(messageFmt, queueName);
              throw new RabbitmqCommunicateException(message, ex);
          }
          return size;
      }
docs: {@inheritDoc}