X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2FLocalFrontendHistory.java;h=8226ac3c758cb36fbcb4ef7f6e943c065bbb80f5;hb=2dedb8231e13abe55d6b75eb532d23dbe536e168;hp=20d18e156e142a80467a41fad459969ba6f83d79;hpb=85c23944a273c338098997700b14f3a802025bb5;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/LocalFrontendHistory.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/LocalFrontendHistory.java index 20d18e156e..8226ac3c75 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/LocalFrontendHistory.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/LocalFrontendHistory.java @@ -7,18 +7,18 @@ */ package org.opendaylight.controller.cluster.datastore; -import com.google.common.base.Preconditions; +import static java.util.Objects.requireNonNull; + import com.google.common.collect.ImmutableMap; -import com.google.common.collect.RangeSet; -import com.google.common.collect.TreeRangeSet; import com.google.common.primitives.UnsignedLong; import java.util.HashMap; import java.util.Map; +import java.util.Optional; +import java.util.SortedSet; import org.opendaylight.controller.cluster.access.concepts.LocalHistoryIdentifier; -import org.opendaylight.controller.cluster.access.concepts.RequestException; import org.opendaylight.controller.cluster.access.concepts.TransactionIdentifier; -import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModification; - +import org.opendaylight.controller.cluster.datastore.utils.MutableUnsignedLongSet; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; /** * Chained transaction specialization of {@link AbstractFrontendHistory}. It prevents concurrent open transactions. @@ -30,22 +30,21 @@ final class LocalFrontendHistory extends AbstractFrontendHistory { private LocalFrontendHistory(final String persistenceId, final ShardDataTree tree, final ShardDataTreeTransactionChain chain, final Map closedTransactions, - final RangeSet purgedTransactions) { + final MutableUnsignedLongSet purgedTransactions) { super(persistenceId, tree, closedTransactions, purgedTransactions); - this.chain = Preconditions.checkNotNull(chain); + this.chain = requireNonNull(chain); } static LocalFrontendHistory create(final String persistenceId, final ShardDataTree tree, - final LocalHistoryIdentifier historyId) { - return new LocalFrontendHistory(persistenceId, tree, tree.ensureTransactionChain(historyId), ImmutableMap.of(), - TreeRangeSet.create()); + final ShardDataTreeTransactionChain chain) { + return new LocalFrontendHistory(persistenceId, tree, chain, ImmutableMap.of(), MutableUnsignedLongSet.of()); } static LocalFrontendHistory recreate(final String persistenceId, final ShardDataTree tree, final ShardDataTreeTransactionChain chain, final Map closedTransactions, - final RangeSet purgedTransactions) { + final MutableUnsignedLongSet purgedTransactions) { return new LocalFrontendHistory(persistenceId, tree, chain, new HashMap<>(closedTransactions), - TreeRangeSet.create(purgedTransactions)); + purgedTransactions.mutableCopy()); } @Override @@ -54,18 +53,17 @@ final class LocalFrontendHistory extends AbstractFrontendHistory { } @Override - FrontendTransaction createOpenSnapshot(final TransactionIdentifier id) throws RequestException { + FrontendTransaction createOpenSnapshot(final TransactionIdentifier id) { return FrontendReadOnlyTransaction.create(this, chain.newReadOnlyTransaction(id)); } @Override - FrontendTransaction createOpenTransaction(final TransactionIdentifier id) throws RequestException { + FrontendTransaction createOpenTransaction(final TransactionIdentifier id) { return FrontendReadWriteTransaction.createOpen(this, chain.newReadWriteTransaction(id)); } @Override - FrontendTransaction createReadyTransaction(final TransactionIdentifier id, final DataTreeModification mod) - throws RequestException { + FrontendTransaction createReadyTransaction(final TransactionIdentifier id, final DataTreeModification mod) { return FrontendReadWriteTransaction.createReady(this, id, mod); } @@ -76,7 +74,8 @@ final class LocalFrontendHistory extends AbstractFrontendHistory { } @Override - ShardDataTreeCohort createReadyCohort(final TransactionIdentifier id, final DataTreeModification mod) { - return chain.createReadyCohort(id, mod); + ShardDataTreeCohort createReadyCohort(final TransactionIdentifier id, final DataTreeModification mod, + final Optional> participatingShardNames) { + return chain.createReadyCohort(id, mod, participatingShardNames); } }