diff --git a/src/main/java/net/floodlightcontroller/debugcounter/IDebugCounterService.java b/src/main/java/net/floodlightcontroller/debugcounter/IDebugCounterService.java index dc98f05b726eebca61d134ffa16eb2a39499a646..20586a5a4463f50da28cf18b930e76f37ef368e6 100644 --- a/src/main/java/net/floodlightcontroller/debugcounter/IDebugCounterService.java +++ b/src/main/java/net/floodlightcontroller/debugcounter/IDebugCounterService.java @@ -43,7 +43,7 @@ public interface IDebugCounterService extends IFloodlightService { /** * maximum levels of hierarchy - * Example: moduleName/counterHierarchy + * Example of moduleName/counterHierarchy: * switch/00:00:00:00:01:02:03:04/pktin/drops where * moduleName ==> "switch" and * counterHierarchy of 3 ==> "00:00:00:00:01:02:03:04/pktin/drops" diff --git a/src/main/java/net/floodlightcontroller/debugevent/DebugEvent.java b/src/main/java/net/floodlightcontroller/debugevent/DebugEvent.java index acfbb11bf2868976cd0867d3c61d120e63d41699..54218d6ed92f34d859ced9e3e5ee82593f7c04bc 100644 --- a/src/main/java/net/floodlightcontroller/debugevent/DebugEvent.java +++ b/src/main/java/net/floodlightcontroller/debugevent/DebugEvent.java @@ -106,8 +106,8 @@ public class DebugEvent implements IFloodlightModule, IDebugEventService { * A particular event type is accessed by directly indexing into the array * with the corresponding event-id. */ - protected static DebugEventHistory[] allEvents = - new DebugEventHistory[MAX_EVENTS]; + protected DebugEventHistory[] allEvents = + new DebugEventHistory[MAX_EVENTS]; /** * Global storage for all event ids registered for a module. The map is indexed @@ -199,8 +199,7 @@ public class DebugEvent implements IFloodlightModule, IDebugEventService { private boolean validEventId() { if (eventId < 0 || eventId >= MAX_EVENTS) { - log.error("Invalid eventId invoked"); - return false; + throw new IllegalStateException(); } return true; } @@ -381,7 +380,7 @@ public class DebugEvent implements IFloodlightModule, IDebugEventService { @Override public List<DebugEventInfo> getModuleEventHistory(String moduleName) { - if (!moduleEvents.containsKey(moduleName)) return null; + if (!moduleEvents.containsKey(moduleName)) return Collections.emptyList(); ArrayList<DebugEventInfo> moduleEventList = new ArrayList<DebugEventInfo>(); for (int eventId : moduleEvents.get(moduleName).values()) { DebugEventHistory de = allEvents[eventId]; diff --git a/src/main/java/net/floodlightcontroller/debugevent/IDebugEventService.java b/src/main/java/net/floodlightcontroller/debugevent/IDebugEventService.java index d870ac56e3da588a5ed5b4407ff07b6c03733507..4cffffc04660853d17b6f73cdaf645e810c7e3b8 100644 --- a/src/main/java/net/floodlightcontroller/debugevent/IDebugEventService.java +++ b/src/main/java/net/floodlightcontroller/debugevent/IDebugEventService.java @@ -136,7 +136,7 @@ public interface IDebugEventService extends IFloodlightService { * Get event history for all events registered for a given moduleName * * @return a list of all event histories for all events registered for the - * the module or null if there are no events for this module + * the module or an empty list if there are no events for this module */ public List<DebugEventInfo> getModuleEventHistory(String moduleName); diff --git a/src/main/java/net/floodlightcontroller/debugevent/NullDebugEvent.java b/src/main/java/net/floodlightcontroller/debugevent/NullDebugEvent.java index 42bf939d2fa2e39a6e8f7efe1f25235a21c403c6..4df4a8d6ad80ff48043eccf5085748bf699ded72 100644 --- a/src/main/java/net/floodlightcontroller/debugevent/NullDebugEvent.java +++ b/src/main/java/net/floodlightcontroller/debugevent/NullDebugEvent.java @@ -2,6 +2,7 @@ package net.floodlightcontroller.debugevent; import java.util.ArrayList; import java.util.Collection; +import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -60,56 +61,47 @@ public class NullDebugEvent implements IFloodlightModule, IDebugEventService { @Override public boolean containsModuleEventName(String moduleName, String eventName) { - // TODO Auto-generated method stub return false; } @Override public boolean containsModuleName(String moduleName) { - // TODO Auto-generated method stub return false; } @Override public List<DebugEventInfo> getAllEventHistory() { - // TODO Auto-generated method stub - return null; + return Collections.emptyList(); } @Override public List<DebugEventInfo> getModuleEventHistory(String param) { - // TODO Auto-generated method stub - return null; + return Collections.emptyList(); } @Override public DebugEventInfo getSingleEventHistory(String moduleName, String eventName) { - // TODO Auto-generated method stub return null; } @Override public void resetAllEvents() { - // TODO Auto-generated method stub } @Override public void resetAllModuleEvents(String moduleName) { - // TODO Auto-generated method stub } @Override public void resetSingleEvent(String moduleName, String eventName) { - // TODO Auto-generated method stub } @Override public ArrayList<EventInfo> getEventList() { - // TODO Auto-generated method stub - return null; + return new ArrayList<EventInfo>(); } @Override @@ -125,13 +117,11 @@ public class NullDebugEvent implements IFloodlightModule, IDebugEventService { @Override public void updateEventNoFlush(Object event) { - // TODO Auto-generated method stub } @Override public void updateEventWithFlush(Object event) { - // TODO Auto-generated method stub } diff --git a/src/test/java/net/floodlightcontroller/debugevent/DebugEventTest.java b/src/test/java/net/floodlightcontroller/debugevent/DebugEventTest.java index a3ef8d91e0ec2d35b9e18506022615408efdff8b..1ceb278118a0f817093ebb7cb31093c82bd47cc0 100644 --- a/src/test/java/net/floodlightcontroller/debugevent/DebugEventTest.java +++ b/src/test/java/net/floodlightcontroller/debugevent/DebugEventTest.java @@ -53,20 +53,20 @@ public class DebugEventTest extends FloodlightTestCase { assertEquals(true, debugEvent.containsModuleEventName("dbgevtest","switchevent")); assertEquals(true, debugEvent.containsModuleEventName("dbgevtest","pktinevent")); - assertEquals(0, DebugEvent.allEvents[eventId1].eventBuffer.size()); - assertEquals(0, DebugEvent.allEvents[eventId2].eventBuffer.size()); + assertEquals(0, debugEvent.allEvents[eventId1].eventBuffer.size()); + assertEquals(0, debugEvent.allEvents[eventId2].eventBuffer.size()); // update is immediately flushed to global store event1.updateEventWithFlush(new SwitchyEvent(1L, "connected")); - assertEquals(1, DebugEvent.allEvents[eventId1].eventBuffer.size()); + assertEquals(1, debugEvent.allEvents[eventId1].eventBuffer.size()); // update is flushed only when flush is explicitly called event2.updateEventNoFlush(new PacketyEvent(1L, 24L)); - assertEquals(0, DebugEvent.allEvents[eventId2].eventBuffer.size()); + assertEquals(0, debugEvent.allEvents[eventId2].eventBuffer.size()); debugEvent.flushEvents(); - assertEquals(1, DebugEvent.allEvents[eventId1].eventBuffer.size()); - assertEquals(1, DebugEvent.allEvents[eventId2].eventBuffer.size()); + assertEquals(1, debugEvent.allEvents[eventId1].eventBuffer.size()); + assertEquals(1, debugEvent.allEvents[eventId2].eventBuffer.size()); DebugEventInfo de = debugEvent.getSingleEventHistory("dbgevtest","switchevent"); assertEquals(1, de.events.size());