Merge "Bug 5596 Cleaning part 2"
[openflowplugin.git] / openflowplugin-impl / src / main / java / org / opendaylight / openflowplugin / impl / statistics / ofpspecific / MessageIntelligenceAgencyImpl.java
index 9a7a761403c55a7de1ba0980467d7a3a1a0a685b..0ba31bd14ccd8dbcf57b6e79b2cb4f702571b98b 100644 (file)
@@ -26,12 +26,13 @@ import org.slf4j.LoggerFactory;
  * Class counts message of {@link org.opendaylight.openflowplugin.api.openflow.statistics.ofpspecific.MessageSpy.STATISTIC_GROUP} type
  * and provides info as debug log.
  */
-public class MessageIntelligenceAgencyImpl implements MessageIntelligenceAgency<Class<?>>, MessageIntelligenceAgencyMXBean {
+public class MessageIntelligenceAgencyImpl implements MessageIntelligenceAgency, MessageIntelligenceAgencyMXBean {
 
     private static final Logger LOG = LoggerFactory.getLogger(MessageIntelligenceAgencyImpl.class);
 
     private static final class MessageCounters {
         private static final AtomicLongFieldUpdater<MessageCounters> UPDATER = AtomicLongFieldUpdater.newUpdater(MessageCounters.class, "current");
+        @SuppressWarnings("unused")
         private volatile long current;
         private long cumulative;
 
@@ -50,18 +51,18 @@ public class MessageIntelligenceAgencyImpl implements MessageIntelligenceAgency<
         }
     }
 
-    private final ConcurrentMap<STATISTIC_GROUP, ConcurrentMap<Class<?>, MessageCounters>> inputStats = new ConcurrentHashMap<>();
+    private ConcurrentMap<STATISTIC_GROUP, ConcurrentMap<Class<?>, MessageCounters>> inputStats = new ConcurrentHashMap<>();
 
     @Override
     public void spyMessage(@Nonnull final Class<?> message, final STATISTIC_GROUP statGroup) {
-        Preconditions.checkNotNull(message,"Message can't be null.");
+        Preconditions.checkNotNull(message, "Message can't be null.");
         getCounters(message, statGroup).increment();
     }
 
     /**
-     * @param message
-     * @param statGroup TODO
-     * @return
+     * @param message counted element
+     * @param statGroup statistic counter group
+     * @return corresponding counter
      */
     private MessageCounters getCounters(final Class<?> message, final STATISTIC_GROUP statGroup) {
         ConcurrentMap<Class<?>, MessageCounters> groupData = getOrCreateGroupData(statGroup);
@@ -124,4 +125,9 @@ public class MessageIntelligenceAgencyImpl implements MessageIntelligenceAgency<
         }
         return dump;
     }
+
+    @Override
+    public void resetStatistics() {
+        inputStats = new ConcurrentHashMap<>();
+    }
 }