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%2Fregistry%2Fgossip%2FBucketStore.java;h=23cbaca32f483f6af6ba8046e34d9233d326d6c5;hp=2f634ce1fabffea20397cd21cf6196c982418c2d;hb=51e91f6bdcc88c5aa96f956e516d31dbb5e5d5e0;hpb=961b5b9260565194a863a25bd697f171ec2405af diff --git a/opendaylight/md-sal/sal-remoterpc-connector/src/main/java/org/opendaylight/controller/remote/rpc/registry/gossip/BucketStore.java b/opendaylight/md-sal/sal-remoterpc-connector/src/main/java/org/opendaylight/controller/remote/rpc/registry/gossip/BucketStore.java index 2f634ce1fa..23cbaca32f 100644 --- a/opendaylight/md-sal/sal-remoterpc-connector/src/main/java/org/opendaylight/controller/remote/rpc/registry/gossip/BucketStore.java +++ b/opendaylight/md-sal/sal-remoterpc-connector/src/main/java/org/opendaylight/controller/remote/rpc/registry/gossip/BucketStore.java @@ -15,6 +15,7 @@ import akka.actor.UntypedActor; import akka.cluster.Cluster; import akka.event.Logging; import akka.event.LoggingAdapter; +import org.opendaylight.controller.utils.ConditionalProbe; import java.util.HashMap; import java.util.Map; @@ -71,6 +72,8 @@ public class BucketStore extends UntypedActor { */ private ActorRef gossiper; + private ConditionalProbe probe; + public BucketStore(){ gossiper = getContext().actorOf(Props.create(Gossiper.class), "gossiper"); } @@ -88,27 +91,32 @@ public class BucketStore extends UntypedActor { @Override public void onReceive(Object message) throws Exception { - log.debug("Received message: node[{}], message[{}]", selfAddress, message); + log.debug("Received message: node[{}], message[{}]", selfAddress, + message); - if (message instanceof UpdateBucket) - receiveUpdateBucket(((UpdateBucket) message).getBucket()); + if (probe != null) { - else if (message instanceof GetAllBuckets) - receiveGetAllBucket(); + probe.tell(message, getSelf()); + } - else if (message instanceof GetLocalBucket) + if (message instanceof ConditionalProbe) { + log.info("Received probe {} {}", getSelf(), message); + probe = (ConditionalProbe) message; + } else if (message instanceof UpdateBucket) { + receiveUpdateBucket(((UpdateBucket) message).getBucket()); + } else if (message instanceof GetAllBuckets) { + receiveGetAllBucket(); + } else if (message instanceof GetLocalBucket) { receiveGetLocalBucket(); - - else if (message instanceof GetBucketsByMembers) - receiveGetBucketsByMembers(((GetBucketsByMembers) message).getMembers()); - - else if (message instanceof GetBucketVersions) + } else if (message instanceof GetBucketsByMembers) { + receiveGetBucketsByMembers( + ((GetBucketsByMembers) message).getMembers()); + } else if (message instanceof GetBucketVersions) { receiveGetBucketVersions(); - - else if (message instanceof UpdateRemoteBuckets) - receiveUpdateRemoteBuckets(((UpdateRemoteBuckets) message).getBuckets()); - - else { + } else if (message instanceof UpdateRemoteBuckets) { + receiveUpdateRemoteBuckets( + ((UpdateRemoteBuckets) message).getBuckets()); + } else { log.debug("Unhandled message [{}]", message); unhandled(message); } @@ -270,4 +278,5 @@ public class BucketStore extends UntypedActor { Address getSelfAddress() { return selfAddress; } + }