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%2FFlowComparator.java;h=2b67edfd9d318d29cbd3508c17a1e8bafd9f4a70;hp=b1db280c2472802aed2e97ce525422308eca3b12;hb=a3ebcb3c36804de1e4c0177f3462e33958b0c216;hpb=ffdd886888129a77a08aa77826a7f092cf9e3392 diff --git a/opendaylight/md-sal/statistics-manager/src/main/java/org/opendaylight/controller/md/statistics/manager/FlowComparator.java b/opendaylight/md-sal/statistics-manager/src/main/java/org/opendaylight/controller/md/statistics/manager/FlowComparator.java index b1db280c24..2b67edfd9d 100644 --- a/opendaylight/md-sal/statistics-manager/src/main/java/org/opendaylight/controller/md/statistics/manager/FlowComparator.java +++ b/opendaylight/md-sal/statistics-manager/src/main/java/org/opendaylight/controller/md/statistics/manager/FlowComparator.java @@ -32,7 +32,7 @@ final class FlowComparator { } public static boolean flowEquals(Flow statsFlow, Flow storedFlow) { - if (statsFlow.getClass() != storedFlow.getClass()) { + if (statsFlow == null || storedFlow == null) { return false; } if (statsFlow.getContainerName()== null) { @@ -42,19 +42,18 @@ final class FlowComparator { } else if(!statsFlow.getContainerName().equals(storedFlow.getContainerName())) { return false; } - if (statsFlow.getMatch()== null) { - if (storedFlow.getMatch() != null) { + if (storedFlow.getPriority() == null) { + if (statsFlow.getPriority() != null && statsFlow.getPriority()!= 0x8000) { return false; } - } //else if(!statsFlow.getMatch().equals(storedFlow.getMatch())) { - else if(!matchEquals(statsFlow.getMatch(), storedFlow.getMatch())) { + } else if(!statsFlow.getPriority().equals(storedFlow.getPriority())) { return false; } - if (storedFlow.getPriority() == null) { - if (statsFlow.getPriority() != null && statsFlow.getPriority()!= 0x8000) { + if (statsFlow.getMatch()== null) { + if (storedFlow.getMatch() != null) { return false; } - } else if(!statsFlow.getPriority().equals(storedFlow.getPriority())) { + } else if(!matchEquals(statsFlow.getMatch(), storedFlow.getMatch())) { return false; } if (statsFlow.getTableId() == null) { @@ -97,9 +96,6 @@ final class FlowComparator { } if (storedFlow == null && statsFlow != null) return false; if (statsFlow == null && storedFlow != null) return false; - if (storedFlow.getClass() != statsFlow.getClass()) { - return false; - } if (storedFlow.getEthernetMatch() == null) { if (statsFlow.getEthernetMatch() != null) { return false;