X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fstatistics-manager%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fmd%2Fstatistics%2Fmanager%2FAbstractStatsTracker.java;h=838aeb7dc36af37ae0916fd1e60f708c8be1861d;hp=e922656d919f5726de7fe19d743458a26f08a531;hb=67d58d1ab50f3c3bbe19a96fb6f0d9d94211829f;hpb=86d34f05001d34a59bc4b327c5b4f85d4b48298a diff --git a/opendaylight/md-sal/statistics-manager/src/main/java/org/opendaylight/controller/md/statistics/manager/AbstractStatsTracker.java b/opendaylight/md-sal/statistics-manager/src/main/java/org/opendaylight/controller/md/statistics/manager/AbstractStatsTracker.java index e922656d91..838aeb7dc3 100644 --- a/opendaylight/md-sal/statistics-manager/src/main/java/org/opendaylight/controller/md/statistics/manager/AbstractStatsTracker.java +++ b/opendaylight/md-sal/statistics-manager/src/main/java/org/opendaylight/controller/md/statistics/manager/AbstractStatsTracker.java @@ -32,9 +32,9 @@ import com.google.common.util.concurrent.JdkFutureAdapters; abstract class AbstractStatsTracker { private static final Logger logger = LoggerFactory.getLogger(AbstractStatsTracker.class); - + private static final int WAIT_FOR_REQUEST_CYCLE = 2; - + private final FutureCallback> callback = new FutureCallback>() { @Override @@ -73,7 +73,7 @@ abstract class AbstractStatsTracker { } protected final InstanceIdentifierBuilder getNodeIdentifierBuilder() { - return InstanceIdentifier.builder(getNodeIdentifier()); + return getNodeIdentifier().builder(); } protected final NodeRef getNodeRef() { @@ -97,14 +97,15 @@ abstract class AbstractStatsTracker { } protected abstract void cleanupSingleStat(DataModificationTransaction trans, K item); protected abstract K updateSingleStat(DataModificationTransaction trans, I item); + protected abstract K createInvariantKey(K item); public abstract void request(); public final synchronized void updateStats(List list) { final DataModificationTransaction trans = startTransaction(); - for (final I item : list) { - trackedItems.put(updateSingleStat(trans, item), requestCounter); + K key = updateSingleStat(trans, item); + trackedItems.put(createInvariantKey(key), requestCounter); } trans.commit();