[ONOS-3535] Accumulate control message stats using monitor service
- Augment the control message class to have device id
- Initial implementation of accumulating control message stats
- Add more adpator for unit test
- Change Collection<ControlMessage> to Set<ControlMessage>
- Fix the arithmatic exception
- Fix some javadoc warnings
Change-Id: I2abaf0d91edca5419b26f1c5a69246bcdb9201bf
diff --git a/apps/cpman/api/src/test/java/org/onosproject/cpman/message/ControlMessageEventTest.java b/apps/cpman/api/src/test/java/org/onosproject/cpman/message/ControlMessageEventTest.java
index c504f5a..fc74892 100644
--- a/apps/cpman/api/src/test/java/org/onosproject/cpman/message/ControlMessageEventTest.java
+++ b/apps/cpman/api/src/test/java/org/onosproject/cpman/message/ControlMessageEventTest.java
@@ -15,36 +15,40 @@
*/
package org.onosproject.cpman.message;
+import com.google.common.collect.Sets;
import org.junit.Test;
import org.onosproject.cpman.ControlMessage;
import org.onosproject.cpman.DefaultControlMessage;
import org.onosproject.event.AbstractEventTest;
+import org.onosproject.net.DeviceId;
-import java.util.ArrayList;
-import java.util.Collection;
+import java.util.Set;
-import static org.onosproject.cpman.ControlMessage.Type.*;
+import static org.onosproject.cpman.ControlMessage.Type.INBOUND_PACKET;
+import static org.onosproject.cpman.ControlMessage.Type.OUTBOUND_PACKET;
/**
* Tests of the control message event.
*/
public class ControlMessageEventTest extends AbstractEventTest {
- private ControlMessage createControlMessage(ControlMessage.Type type) {
- return new DefaultControlMessage(type, 0L, 0L, 0L, 0L);
+ private ControlMessage createControlMessage(ControlMessage.Type type,
+ DeviceId deviceId) {
+ return new DefaultControlMessage(type, deviceId, 0L, 0L, 0L, 0L);
}
- private Collection<ControlMessage> createControlMessages() {
- Collection<ControlMessage> controlMessages = new ArrayList<>();
- controlMessages.add(createControlMessage(INBOUND_PACKET));
- controlMessages.add(createControlMessage(OUTBOUND_PACKET));
+ private Set<ControlMessage> createControlMessages() {
+ final DeviceId deviceId = DeviceId.deviceId("of:0000000000000001");
+ Set<ControlMessage> controlMessages = Sets.newConcurrentHashSet();
+ controlMessages.add(createControlMessage(INBOUND_PACKET, deviceId));
+ controlMessages.add(createControlMessage(OUTBOUND_PACKET, deviceId));
return controlMessages;
}
@Override
@Test
public void withoutTime() {
- Collection<ControlMessage> cms = createControlMessages();
+ Set<ControlMessage> cms = createControlMessages();
long before = System.currentTimeMillis();
ControlMessageEvent event =
new ControlMessageEvent(ControlMessageEvent.Type.STATS_UPDATE, cms);
diff --git a/apps/cpman/api/src/test/java/org/onosproject/cpman/message/ControlMessageServiceAdaptor.java b/apps/cpman/api/src/test/java/org/onosproject/cpman/message/ControlMessageServiceAdaptor.java
deleted file mode 100644
index 23976c4..0000000
--- a/apps/cpman/api/src/test/java/org/onosproject/cpman/message/ControlMessageServiceAdaptor.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2016 Open Networking Laboratory
- *
- * Licensed 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.onosproject.cpman.message;
-
-/**
- * Test adapter for control message service.
- */
-public class ControlMessageServiceAdaptor implements ControlMessageService {
- @Override
- public void addListener(ControlMessageListener listener) {
- }
-
- @Override
- public void removeListener(ControlMessageListener listener) {
- }
-}
diff --git a/apps/cpman/api/src/test/java/org/onosproject/cpman/message/DefaultControlMessageTest.java b/apps/cpman/api/src/test/java/org/onosproject/cpman/message/DefaultControlMessageTest.java
index 1bc114f..9f4572e 100644
--- a/apps/cpman/api/src/test/java/org/onosproject/cpman/message/DefaultControlMessageTest.java
+++ b/apps/cpman/api/src/test/java/org/onosproject/cpman/message/DefaultControlMessageTest.java
@@ -17,6 +17,7 @@
import org.junit.Test;
import org.onosproject.cpman.DefaultControlMessage;
+import org.onosproject.net.DeviceId;
import static org.hamcrest.Matchers.is;
import static org.junit.Assert.assertThat;
@@ -42,12 +43,13 @@
*/
@Test
public void testBasic() {
+ final DeviceId deviceId = DeviceId.deviceId("of:0000000000000001");
final DefaultControlMessage cm =
- new DefaultControlMessage(INBOUND_PACKET, 0L, 1L, 2L, 3L);
+ new DefaultControlMessage(INBOUND_PACKET, deviceId, 0L, 1L, 2L, 3L);
assertThat(cm.type(), is(INBOUND_PACKET));
assertThat(cm.load(), is(0L));
assertThat(cm.rate(), is(1L));
assertThat(cm.count(), is(2L));
- assertThat(cm.timeStamp(), is(3L));
+ assertThat(cm.timestamp(), is(3L));
}
}