X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Feos-dom-akka%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Feos%2Fakka%2Fowner%2Fsupervisor%2FOwnerSyncer.java;fp=opendaylight%2Fmd-sal%2Feos-dom-akka%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Feos%2Fakka%2Fowner%2Fsupervisor%2FOwnerSyncer.java;h=092f532dfbd06eb6a0097aef157627c4dfd19752;hb=1adec580405aafae353f8b0b3a5a0f474a05c6c0;hp=04d27ee4dc47b80c1612f4386118535e23d33044;hpb=f2868cf8e1ddc85ec1128199ed2607922ea74c24;p=controller.git diff --git a/opendaylight/md-sal/eos-dom-akka/src/main/java/org/opendaylight/controller/eos/akka/owner/supervisor/OwnerSyncer.java b/opendaylight/md-sal/eos-dom-akka/src/main/java/org/opendaylight/controller/eos/akka/owner/supervisor/OwnerSyncer.java index 04d27ee4dc..092f532dfb 100644 --- a/opendaylight/md-sal/eos-dom-akka/src/main/java/org/opendaylight/controller/eos/akka/owner/supervisor/OwnerSyncer.java +++ b/opendaylight/md-sal/eos-dom-akka/src/main/java/org/opendaylight/controller/eos/akka/owner/supervisor/OwnerSyncer.java @@ -22,6 +22,7 @@ import akka.cluster.ddata.ORSet; import akka.cluster.ddata.typed.javadsl.DistributedData; import akka.cluster.ddata.typed.javadsl.Replicator; import akka.cluster.ddata.typed.javadsl.ReplicatorMessageAdapter; +import akka.pattern.StatusReply; import java.time.Duration; import java.util.HashMap; import java.util.HashSet; @@ -29,10 +30,14 @@ import java.util.Map; import java.util.Set; import org.eclipse.jdt.annotation.Nullable; import org.opendaylight.controller.eos.akka.owner.supervisor.command.DataCenterActivated; +import org.opendaylight.controller.eos.akka.owner.supervisor.command.GetEntitiesBackendRequest; +import org.opendaylight.controller.eos.akka.owner.supervisor.command.GetEntityBackendRequest; +import org.opendaylight.controller.eos.akka.owner.supervisor.command.GetEntityOwnerBackendRequest; import org.opendaylight.controller.eos.akka.owner.supervisor.command.InitialCandidateSync; import org.opendaylight.controller.eos.akka.owner.supervisor.command.InitialOwnerSync; import org.opendaylight.controller.eos.akka.owner.supervisor.command.OwnerSupervisorCommand; import org.opendaylight.controller.eos.akka.owner.supervisor.command.OwnerSupervisorReply; +import org.opendaylight.controller.eos.akka.owner.supervisor.command.OwnerSupervisorRequest; import org.opendaylight.controller.eos.akka.registry.candidate.CandidateRegistry; import org.opendaylight.mdsal.binding.dom.codec.api.BindingInstanceIdentifierCodec; import org.opendaylight.mdsal.eos.dom.api.DOMEntity; @@ -87,9 +92,19 @@ public final class OwnerSyncer extends AbstractBehavior return newReceiveBuilder() .onMessage(InitialCandidateSync.class, this::onInitialCandidateSync) .onMessage(InitialOwnerSync.class, this::onInitialOwnerSync) + .onMessage(GetEntitiesBackendRequest.class, this::onFailEntityRpc) + .onMessage(GetEntityBackendRequest.class, this::onFailEntityRpc) + .onMessage(GetEntityOwnerBackendRequest.class, this::onFailEntityRpc) .build(); } + private Behavior onFailEntityRpc(final OwnerSupervisorRequest message) { + LOG.debug("Failing rpc request. {}", message); + message.getReplyTo().tell(StatusReply.error( + "OwnerSupervisor is inactive so it cannot handle entity rpc requests.")); + return this; + } + private Behavior onInitialCandidateSync(final InitialCandidateSync rsp) { final Replicator.GetResponse>> response = rsp.getResponse(); if (response instanceof Replicator.GetSuccess) {