X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-remoterpc-connector%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fremote%2Frpc%2Futils%2FLatestEntryRoutingLogic.java;h=f7b36a776e74af78b80b86837be5951b318b20a0;hp=c0e2973aab53c48e92329d2d96487d277d25531e;hb=7aaa993c7f3ed5cb11ffede692ef23f4ed2c9e47;hpb=9ddc65e1ddae50f691566cd9382707679436c055 diff --git a/opendaylight/md-sal/sal-remoterpc-connector/src/main/java/org/opendaylight/controller/remote/rpc/utils/LatestEntryRoutingLogic.java b/opendaylight/md-sal/sal-remoterpc-connector/src/main/java/org/opendaylight/controller/remote/rpc/utils/LatestEntryRoutingLogic.java index c0e2973aab..f7b36a776e 100644 --- a/opendaylight/md-sal/sal-remoterpc-connector/src/main/java/org/opendaylight/controller/remote/rpc/utils/LatestEntryRoutingLogic.java +++ b/opendaylight/md-sal/sal-remoterpc-connector/src/main/java/org/opendaylight/controller/remote/rpc/utils/LatestEntryRoutingLogic.java @@ -11,6 +11,7 @@ package org.opendaylight.controller.remote.rpc.utils; import akka.actor.ActorRef; import akka.japi.Pair; import com.google.common.base.Preconditions; +import java.io.Serializable; import java.util.Collection; import java.util.Comparator; import java.util.SortedSet; @@ -36,22 +37,28 @@ public class LatestEntryRoutingLogic implements RoutingLogic { return actorRefSet.last().first(); } - private class LatestEntryComparator implements Comparator> { + private static class LatestEntryComparator implements Comparator>, Serializable { + private static final long serialVersionUID = 1L; @Override public int compare(Pair o1, Pair o2) { if (o1 == null && o2 == null) { return 0; } - if (o1 == null && o2 != null) { + + if (o1 != null && o2 != null && o1.second() == null && o2.second() == null) { + return 0; + } + + if ((o1 == null || o1.second() == null) && o2 != null) { return -1; } - if (o1 != null && o2 == null) { + + if (o2 == null || o2.second() == null) { return 1; } return o1.second().compareTo(o2.second()); - } } }