X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;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=a73a5620b39687beb411d8ee911f075b182276d7;hp=1a8df09f1d5b68cc1f3b08afa2cf809d147ccd71;hb=684673104adccd504e394e01a852a06d42047af0;hpb=805e9821a737d305f7f591ae51055e475e26fcdc 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 1a8df09f1d..a73a5620b3 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 @@ -25,9 +25,12 @@ import java.util.HashMap; import java.util.HashSet; 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.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.registry.candidate.CandidateRegistry; import org.opendaylight.mdsal.eos.dom.api.DOMEntity; import org.slf4j.Logger; @@ -49,7 +52,8 @@ public final class OwnerSyncer extends AbstractBehavior private int toSync = -1; - private OwnerSyncer(final ActorContext context) { + private OwnerSyncer(final ActorContext context, + @Nullable final ActorRef notifyDatacenterStarted) { super(context); LOG.debug("Starting candidate and owner sync"); @@ -61,10 +65,15 @@ public final class OwnerSyncer extends AbstractBehavior Duration.ofSeconds(5)).askGet( askReplyTo -> new Replicator.Get<>(CandidateRegistry.KEY, Replicator.readLocal(), askReplyTo), InitialCandidateSync::new); + + if (notifyDatacenterStarted != null) { + notifyDatacenterStarted.tell(DataCenterActivated.INSTANCE); + } } - public static Behavior create() { - return Behaviors.setup(OwnerSyncer::new); + public static Behavior create( + final ActorRef notifyDatacenterStarted) { + return Behaviors.setup(ctx -> new OwnerSyncer(ctx, notifyDatacenterStarted)); } @Override