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

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

1. QueueControlTest#testListMessageCounterHistory()

Project: activemq-artemis
File: QueueControlTest.java
@Test
public void testListMessageCounterHistory() throws Exception {
    long counterPeriod = 1000;
    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(counterPeriod);
    String jsonString = queueControl.listMessageCounterHistory();
    DayCounterInfo[] infos = DayCounterInfo.fromJSON(jsonString);
    Assert.assertEquals(1, infos.length);
    session.deleteQueue(queue);
}

2. MessageCounterHelper#listMessageCounterHistory()

Project: activemq-artemis
File: MessageCounterHelper.java
// Constants -----------------------------------------------------
// Attributes ----------------------------------------------------
// Static --------------------------------------------------------
public static String listMessageCounterHistory(final MessageCounter counter) throws Exception {
    List<DayCounter> history = counter.getHistory();
    DayCounterInfo[] infos = new DayCounterInfo[history.size()];
    for (int i = 0; i < infos.length; i++) {
        DayCounter dayCounter = history.get(i);
        int[] counters = dayCounter.getCounters();
        GregorianCalendar date = dayCounter.getDate();
        DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.SHORT);
        String strData = dateFormat.format(date.getTime());
        infos[i] = new DayCounterInfo(strData, counters);
    }
    return DayCounterInfo.toJSON(infos);
}