import akka.actor.Props;
import com.google.common.base.Preconditions;
import java.util.concurrent.CountDownLatch;
+import org.opendaylight.controller.cluster.datastore.AbstractDataStore;
import org.opendaylight.controller.cluster.datastore.ClusterWrapper;
import org.opendaylight.controller.cluster.datastore.DatastoreContextFactory;
import org.opendaylight.controller.cluster.datastore.config.Configuration;
-import org.opendaylight.controller.cluster.datastore.messages.DatastoreSnapshot;
+import org.opendaylight.controller.cluster.datastore.persisted.DatastoreSnapshot;
import org.opendaylight.controller.cluster.datastore.utils.PrimaryShardInfoFutureCache;
public abstract class AbstractShardManagerCreator<T extends AbstractShardManagerCreator<T>> {
private ClusterWrapper cluster;
private Configuration configuration;
private DatastoreContextFactory datastoreContextFactory;
- private CountDownLatch waitTillReadyCountdownLatch;
+ private AbstractDataStore distributedDataStore;
+ private CountDownLatch waitTillReadyCountDownLatch;
private PrimaryShardInfoFutureCache primaryShardInfoCache;
private DatastoreSnapshot restoreFromSnapshot;
private volatile boolean sealed;
return cluster;
}
- public T cluster(ClusterWrapper cluster) {
+ public T cluster(ClusterWrapper newCluster) {
checkSealed();
- this.cluster = cluster;
+ this.cluster = newCluster;
return self();
}
return configuration;
}
- public T configuration(Configuration configuration) {
+ public T configuration(Configuration newConfiguration) {
checkSealed();
- this.configuration = configuration;
+ this.configuration = newConfiguration;
return self();
}
return datastoreContextFactory;
}
- public T datastoreContextFactory(DatastoreContextFactory datastoreContextFactory) {
+ public T datastoreContextFactory(final DatastoreContextFactory newDatastoreContextFactory) {
checkSealed();
- this.datastoreContextFactory = datastoreContextFactory;
+ this.datastoreContextFactory = Preconditions.checkNotNull(newDatastoreContextFactory);
return self();
}
- CountDownLatch getWaitTillReadyCountdownLatch() {
- return waitTillReadyCountdownLatch;
+ AbstractDataStore getDistributedDataStore() {
+ return distributedDataStore;
}
- public T waitTillReadyCountdownLatch(CountDownLatch waitTillReadyCountdownLatch) {
+ public T distributedDataStore(final AbstractDataStore distributedDataStore) {
checkSealed();
- this.waitTillReadyCountdownLatch = waitTillReadyCountdownLatch;
+ this.distributedDataStore = distributedDataStore;
+ return self();
+ }
+
+ CountDownLatch getWaitTillReadyCountDownLatch() {
+ return waitTillReadyCountDownLatch;
+ }
+
+ public T waitTillReadyCountDownLatch(CountDownLatch newWaitTillReadyCountDownLatch) {
+ checkSealed();
+ this.waitTillReadyCountDownLatch = newWaitTillReadyCountDownLatch;
return self();
}
return primaryShardInfoCache;
}
- public T primaryShardInfoCache(PrimaryShardInfoFutureCache primaryShardInfoCache) {
+ public T primaryShardInfoCache(PrimaryShardInfoFutureCache newPrimaryShardInfoCache) {
checkSealed();
- this.primaryShardInfoCache = primaryShardInfoCache;
+ this.primaryShardInfoCache = newPrimaryShardInfoCache;
return self();
}
return restoreFromSnapshot;
}
- public T restoreFromSnapshot(DatastoreSnapshot restoreFromSnapshot) {
+ public T restoreFromSnapshot(DatastoreSnapshot newRestoreFromSnapshot) {
checkSealed();
- this.restoreFromSnapshot = restoreFromSnapshot;
+ this.restoreFromSnapshot = newRestoreFromSnapshot;
return self();
}
Preconditions.checkNotNull(cluster, "cluster should not be null");
Preconditions.checkNotNull(configuration, "configuration should not be null");
Preconditions.checkNotNull(datastoreContextFactory, "datastoreContextFactory should not be null");
- Preconditions.checkNotNull(waitTillReadyCountdownLatch, "waitTillReadyCountdownLatch should not be null");
+ Preconditions.checkNotNull(distributedDataStore, "distributedDataStore should not be null");
+ Preconditions.checkNotNull(waitTillReadyCountDownLatch, "waitTillReadyCountdownLatch should not be null");
Preconditions.checkNotNull(primaryShardInfoCache, "primaryShardInfoCache should not be null");
}
verify();
return Props.create(ShardManager.class, this);
}
-}
\ No newline at end of file
+}