org.apache.activemq.artemis.api.core.management.MessageCounterInfo

Here are the examples of the java api class org.apache.activemq.artemis.api.core.management.MessageCounterInfo taken from open source projects.

1. QueueControlTest#testResetMessageCounter()

Project: activemq-artemis
File: QueueControlTest.java
@Test
public void testResetMessageCounter() throws Exception {
    SimpleString address = RandomUtil.randomSimpleString();
    SimpleString queue = RandomUtil.randomSimpleString();
    session.createQueue(address, queue, null, false);
    QueueControl queueControl = createManagementControl(address, queue);
    ActiveMQServerControl serverControl = ManagementControlHelper.createActiveMQServerControl(mbeanServer);
    serverControl.enableMessageCounters();
    serverControl.setMessageCounterSamplePeriod(MessageCounterManagerImpl.MIN_SAMPLE_PERIOD);
    String jsonString = queueControl.listMessageCounter();
    MessageCounterInfo info = MessageCounterInfo.fromJSON(jsonString);
    Assert.assertEquals(0, info.getDepth());
    Assert.assertEquals(0, info.getCount());
    ClientProducer producer = session.createProducer(address);
    producer.send(session.createMessage(false));
    Thread.sleep(MessageCounterManagerImpl.MIN_SAMPLE_PERIOD * 2);
    jsonString = queueControl.listMessageCounter();
    info = MessageCounterInfo.fromJSON(jsonString);
    Assert.assertEquals(1, info.getDepth());
    Assert.assertEquals(1, info.getDepthDelta());
    Assert.assertEquals(1, info.getCount());
    Assert.assertEquals(1, info.getCountDelta());
    consumeMessages(1, session, queue);
    Thread.sleep(MessageCounterManagerImpl.MIN_SAMPLE_PERIOD * 2);
    jsonString = queueControl.listMessageCounter();
    info = MessageCounterInfo.fromJSON(jsonString);
    Assert.assertEquals(0, info.getDepth());
    Assert.assertEquals(-1, info.getDepthDelta());
    Assert.assertEquals(1, info.getCount());
    Assert.assertEquals(0, info.getCountDelta());
    queueControl.resetMessageCounter();
    Thread.sleep(MessageCounterManagerImpl.MIN_SAMPLE_PERIOD * 2);
    jsonString = queueControl.listMessageCounter();
    info = MessageCounterInfo.fromJSON(jsonString);
    Assert.assertEquals(0, info.getDepth());
    Assert.assertEquals(0, info.getDepthDelta());
    Assert.assertEquals(0, info.getCount());
    Assert.assertEquals(0, info.getCountDelta());
    session.deleteQueue(queue);
}

2. QueueControlTest#testListMessageCounter()

Project: activemq-artemis
File: QueueControlTest.java
@Test
public void testListMessageCounter() throws Exception {
    SimpleString address = RandomUtil.randomSimpleString();
    SimpleString queue = RandomUtil.randomSimpleString();
    session.createQueue(address, queue, null, false);
    QueueControl queueControl = createManagementControl(address, queue);
    ActiveMQServerControl serverControl = ManagementControlHelper.createActiveMQServerControl(mbeanServer);
    serverControl.enableMessageCounters();
    serverControl.setMessageCounterSamplePeriod(MessageCounterManagerImpl.MIN_SAMPLE_PERIOD);
    String jsonString = queueControl.listMessageCounter();
    MessageCounterInfo info = MessageCounterInfo.fromJSON(jsonString);
    Assert.assertEquals(0, info.getDepth());
    Assert.assertEquals(0, info.getCount());
    ClientProducer producer = session.createProducer(address);
    producer.send(session.createMessage(false));
    Thread.sleep(MessageCounterManagerImpl.MIN_SAMPLE_PERIOD * 2);
    jsonString = queueControl.listMessageCounter();
    info = MessageCounterInfo.fromJSON(jsonString);
    Assert.assertEquals(1, info.getDepth());
    Assert.assertEquals(1, info.getDepthDelta());
    Assert.assertEquals(1, info.getCount());
    Assert.assertEquals(1, info.getCountDelta());
    producer.send(session.createMessage(false));
    Thread.sleep(MessageCounterManagerImpl.MIN_SAMPLE_PERIOD * 2);
    jsonString = queueControl.listMessageCounter();
    info = MessageCounterInfo.fromJSON(jsonString);
    Assert.assertEquals(2, info.getDepth());
    Assert.assertEquals(1, info.getDepthDelta());
    Assert.assertEquals(2, info.getCount());
    Assert.assertEquals(1, info.getCountDelta());
    consumeMessages(2, session, queue);
    Thread.sleep(MessageCounterManagerImpl.MIN_SAMPLE_PERIOD * 2);
    jsonString = queueControl.listMessageCounter();
    info = MessageCounterInfo.fromJSON(jsonString);
    Assert.assertEquals(0, info.getDepth());
    Assert.assertEquals(-2, info.getDepthDelta());
    Assert.assertEquals(2, info.getCount());
    Assert.assertEquals(0, info.getCountDelta());
    session.deleteQueue(queue);
}