X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2Fshardmanager%2FAbstractShardManagerCreator.java;h=d28734bca3dff55792d3c2f433f6e2838b0291e1;hp=eb6ebb3d6220164290b24c8dbbe7d4d6e58869f6;hb=bb10634078d038fcccb4d5542a79f062e3835ad3;hpb=2d60632f7cf63712e8357a3cf3fc40d83366e5e6 diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/shardmanager/AbstractShardManagerCreator.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/shardmanager/AbstractShardManagerCreator.java index eb6ebb3d62..d28734bca3 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/shardmanager/AbstractShardManagerCreator.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/shardmanager/AbstractShardManagerCreator.java @@ -7,9 +7,11 @@ */ package org.opendaylight.controller.cluster.datastore.shardmanager; +import static com.google.common.base.Preconditions.checkState; +import static java.util.Objects.requireNonNull; + import akka.actor.Props; -import com.google.common.base.Preconditions; -import java.util.concurrent.CountDownLatch; +import com.google.common.util.concurrent.SettableFuture; import org.opendaylight.controller.cluster.datastore.AbstractDataStore; import org.opendaylight.controller.cluster.datastore.ClusterWrapper; import org.opendaylight.controller.cluster.datastore.DatastoreContextFactory; @@ -18,11 +20,11 @@ import org.opendaylight.controller.cluster.datastore.persisted.DatastoreSnapshot import org.opendaylight.controller.cluster.datastore.utils.PrimaryShardInfoFutureCache; public abstract class AbstractShardManagerCreator> { + private SettableFuture readinessFuture; private ClusterWrapper cluster; private Configuration configuration; private DatastoreContextFactory datastoreContextFactory; private AbstractDataStore distributedDataStore; - private CountDownLatch waitTillReadyCountDownLatch; private PrimaryShardInfoFutureCache primaryShardInfoCache; private DatastoreSnapshot restoreFromSnapshot; private volatile boolean sealed; @@ -37,14 +39,14 @@ public abstract class AbstractShardManagerCreator getReadinessFuture() { + return readinessFuture; } - public T waitTillReadyCountDownLatch(CountDownLatch newWaitTillReadyCountDownLatch) { + public T readinessFuture(final SettableFuture newReadinessFuture) { checkSealed(); - this.waitTillReadyCountDownLatch = newWaitTillReadyCountDownLatch; + this.readinessFuture = newReadinessFuture; return self(); } @@ -94,7 +96,7 @@ public abstract class AbstractShardManagerCreator