/** * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.apache.activemq.broker.region; import org.apache.activemq.management.CountStatisticImpl; import org.apache.activemq.management.PollCountStatisticImpl; import org.apache.activemq.management.StatsImpl; /** * The J2EE Statistics for the a Destination. * * */ public class ConnectorStatistics extends StatsImpl { protected CountStatisticImpl enqueues; protected CountStatisticImpl dequeues; protected CountStatisticImpl consumers; protected CountStatisticImpl messages; protected PollCountStatisticImpl messagesCached; public ConnectorStatistics() { enqueues = new CountStatisticImpl("enqueues", "The number of messages that have been sent to the destination"); dequeues = new CountStatisticImpl("dequeues", "The number of messages that have been dispatched from the destination"); consumers = new CountStatisticImpl("consumers", "The number of consumers that that are subscribing to messages from the destination"); messages = new CountStatisticImpl("messages", "The number of messages that that are being held by the destination"); messagesCached = new PollCountStatisticImpl("messagesCached", "The number of messages that are held in the destination's memory cache"); addStatistic("enqueues", enqueues); addStatistic("dequeues", dequeues); addStatistic("consumers", consumers); addStatistic("messages", messages); addStatistic("messagesCached", messagesCached); } public CountStatisticImpl getEnqueues() { return enqueues; } public CountStatisticImpl getDequeues() { return dequeues; } public CountStatisticImpl getConsumers() { return consumers; } public PollCountStatisticImpl getMessagesCached() { return messagesCached; } public CountStatisticImpl getMessages() { return messages; } public void reset() { super.reset(); enqueues.reset(); dequeues.reset(); } public void setEnabled(boolean enabled) { super.setEnabled(enabled); enqueues.setEnabled(enabled); dequeues.setEnabled(enabled); consumers.setEnabled(enabled); messages.setEnabled(enabled); messagesCached.setEnabled(enabled); } public void setParent(ConnectorStatistics parent) { if (parent != null) { enqueues.setParent(parent.enqueues); dequeues.setParent(parent.dequeues); consumers.setParent(parent.consumers); messagesCached.setParent(parent.messagesCached); messages.setParent(parent.messages); } else { enqueues.setParent(null); dequeues.setParent(null); consumers.setParent(null); messagesCached.setParent(null); messages.setParent(null); } } public void setMessagesCached(PollCountStatisticImpl messagesCached) { this.messagesCached = messagesCached; } }