docs: @Override
      public IQueueMessage<ID, DATA> take() throws QueueException.EphemeralIsFull {
          try {
              GetResponse msg = getConsumerChannel().basicGet(queueName, true);
              return msg != null ? deserialize(msg.getBody()) : null;
          } catch (Exception e) {
              throw e instanceof QueueException ? (QueueException) e : new QueueException(e);
          }
      }