public Object getField()

in artemis-server/src/main/java/org/apache/activemq/artemis/core/management/impl/view/QueueView.java [85:158]


   public Object getField(QueueControl queue, String fieldName) {
      Queue q = server.locateQueue(new SimpleString(queue.getName()));

      QueueField field = QueueField.valueOfName(fieldName);

      switch (field) {
         case ID:
            return queue.getID();
         case NAME:
            return queue.getName();
         case ADDRESS:
            return queue.getAddress();
         case FILTER:
            return queue.getFilter();
         case DURABLE:
            return queue.isDurable();
         case PAUSED:
            return q.isPaused();
         case TEMPORARY:
            return queue.isTemporary();
         case PURGE_ON_NO_CONSUMERS:
            return queue.isPurgeOnNoConsumers();
         case CONSUMER_COUNT:
            return queue.getConsumerCount();
         case MAX_CONSUMERS:
            return queue.getMaxConsumers();
         case AUTO_CREATED:
            return q.isAutoCreated();
         case USER:
            return q.getUser();
         case ROUTING_TYPE:
            return queue.getRoutingType();
         case MESSAGES_ADDED:
            return queue.getMessagesAdded();
         case MESSAGE_COUNT:
            return queue.getMessageCount();
         case MESSAGES_ACKED:
            return queue.getMessagesAcknowledged();
         case MESSAGES_EXPIRED:
            return queue.getMessagesExpired();
         case DELIVERING_COUNT:
            return queue.getDeliveringCount();
         case MESSAGES_KILLED:
            return queue.getMessagesKilled();
         case DIRECT_DELIVER:
            return q.isDirectDeliver();
         case EXCLUSIVE:
            return q.isExclusive();
         case LAST_VALUE:
            return q.isLastValue();
         case LAST_VALUE_KEY:
            return q.getLastValueKey();
         case SCHEDULED_COUNT:
            return q.getScheduledCount();
         case GROUP_REBALANCE:
            return queue.isGroupRebalance();
         case GROUP_REBALANCE_PAUSE_DISPATCH:
            return queue.isGroupRebalancePauseDispatch();
         case GROUP_BUCKETS:
            return queue.getGroupBuckets();
         case GROUP_FIRST_KEY:
            return queue.getGroupFirstKey();
         case ENABLED:
            return q.isEnabled();
         case RING_SIZE:
            return q.getRingSize();
         case CONSUMERS_BEFORE_DISPATCH:
            return q.getConsumersBeforeDispatch();
         case DELAY_BEFORE_DISPATCH:
            return q.getDelayBeforeDispatch();
         default:
            throw new IllegalArgumentException("Unsupported field, " + fieldName);
      }
   }