X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fmdsal-trace%2Fdom-impl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fmd%2Fsal%2Ftrace%2Fclosetracker%2Fimpl%2FCloseTrackedRegistry.java;h=7f99824601d986d2527cba3e3dfcfb03168ab863;hb=b4bf55727093657662d8c16a50fa85f87978a586;hp=4e608396303b94e2dd1bca31130349a856ac7ebc;hpb=cb9ede64de8b5633d1896f0973f2da9835e0f876;p=controller.git diff --git a/opendaylight/md-sal/mdsal-trace/dom-impl/src/main/java/org/opendaylight/controller/md/sal/trace/closetracker/impl/CloseTrackedRegistry.java b/opendaylight/md-sal/mdsal-trace/dom-impl/src/main/java/org/opendaylight/controller/md/sal/trace/closetracker/impl/CloseTrackedRegistry.java index 4e60839630..7f99824601 100644 --- a/opendaylight/md-sal/mdsal-trace/dom-impl/src/main/java/org/opendaylight/controller/md/sal/trace/closetracker/impl/CloseTrackedRegistry.java +++ b/opendaylight/md-sal/mdsal-trace/dom-impl/src/main/java/org/opendaylight/controller/md/sal/trace/closetracker/impl/CloseTrackedRegistry.java @@ -10,8 +10,10 @@ package org.opendaylight.controller.md.sal.trace.closetracker.impl; import static java.util.Arrays.asList; import static java.util.Collections.emptyList; +import edu.umd.cs.findbugs.annotations.SuppressFBWarnings; import java.util.Arrays; import java.util.Collections; +import java.util.Comparator; import java.util.HashMap; import java.util.HashSet; import java.util.List; @@ -31,8 +33,8 @@ public class CloseTrackedRegistry> { private final Object anchor; private final String createDescription; - private final Set> tracked = new ConcurrentSkipListSet<>( - (o1, o2) -> Integer.compare(System.identityHashCode(o1), System.identityHashCode(o2))); + private final Set> tracked = + new ConcurrentSkipListSet<>(Comparator.comparingInt(System::identityHashCode)); private final boolean isDebugContextEnabled; @@ -87,6 +89,8 @@ public class CloseTrackedRegistry> { * debugContextEnabled is false), and value is the number of open * instances created at that place in the code. */ + // For some reason, FB sees 'map' as useless but it clearly isn't. + @SuppressFBWarnings("UC_USELESS_OBJECT") public Set> getAllUnique() { Map, Long> map = new HashMap<>(); Set> copyOfTracked = new HashSet<>(tracked); @@ -98,16 +102,13 @@ public class CloseTrackedRegistry> { } Set> report = new HashSet<>(); - map.forEach((stackTraceElements, number) -> { - copyOfTracked.stream().filter(closeTracked -> { - StackTraceElement[] closeTrackedStackTraceArray = closeTracked.getAllocationContextStackTrace(); - List closeTrackedStackTraceElements = - closeTrackedStackTraceArray != null ? asList(closeTrackedStackTraceArray) : emptyList(); - return closeTrackedStackTraceElements.equals(stackTraceElements); - }).findAny().ifPresent(exampleCloseTracked -> { - report.add(new CloseTrackedRegistryReportEntry<>(exampleCloseTracked, number, stackTraceElements)); - }); - }); + map.forEach((stackTraceElements, number) -> copyOfTracked.stream().filter(closeTracked -> { + StackTraceElement[] closeTrackedStackTraceArray = closeTracked.getAllocationContextStackTrace(); + List closeTrackedStackTraceElements = + closeTrackedStackTraceArray != null ? asList(closeTrackedStackTraceArray) : emptyList(); + return closeTrackedStackTraceElements.equals(stackTraceElements); + }).findAny().ifPresent(exampleCloseTracked -> report.add( + new CloseTrackedRegistryReportEntry<>(exampleCloseTracked, number, stackTraceElements)))); return report; }