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%2FShardDataTreeTransactionChain.java;h=7917ae0177f6a9f737cd59b04d314e67b841c95e;hp=a774d647d3d6c6e8cbecea7eb1b91b5ccfe0e6df;hb=546cd1fd100dbaa36908b22c2f422320dbd8c4b2;hpb=731e7284cf0895fdb1b89427f91762e80e67c2ff diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardDataTreeTransactionChain.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardDataTreeTransactionChain.java index a774d647d3..7917ae0177 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardDataTreeTransactionChain.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardDataTreeTransactionChain.java @@ -7,11 +7,12 @@ */ package org.opendaylight.controller.cluster.datastore; +import static com.google.common.base.Preconditions.checkState; +import static java.util.Objects.requireNonNull; + import com.google.common.base.MoreObjects; -import com.google.common.base.Preconditions; import java.util.Optional; import java.util.SortedSet; -import javax.annotation.concurrent.NotThreadSafe; import org.opendaylight.controller.cluster.access.concepts.LocalHistoryIdentifier; import org.opendaylight.controller.cluster.access.concepts.TransactionIdentifier; import org.opendaylight.yangtools.concepts.Identifiable; @@ -21,9 +22,8 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** - * A transaction chain attached to a Shard. + * A transaction chain attached to a Shard. This class is NOT thread-safe. */ -@NotThreadSafe final class ShardDataTreeTransactionChain extends ShardDataTreeTransactionParent implements Identifiable { @@ -36,13 +36,13 @@ final class ShardDataTreeTransactionChain extends ShardDataTreeTransactionParent private boolean closed; ShardDataTreeTransactionChain(final LocalHistoryIdentifier localHistoryIdentifier, final ShardDataTree dataTree) { - this.chainId = Preconditions.checkNotNull(localHistoryIdentifier); - this.dataTree = Preconditions.checkNotNull(dataTree); + this.chainId = requireNonNull(localHistoryIdentifier); + this.dataTree = requireNonNull(dataTree); } private DataTreeSnapshot getSnapshot() { - Preconditions.checkState(!closed, "TransactionChain %s has been closed", this); - Preconditions.checkState(openTransaction == null, "Transaction %s is open", openTransaction); + checkState(!closed, "TransactionChain %s has been closed", this); + checkState(openTransaction == null, "Transaction %s is open", openTransaction); if (previousTx == null) { LOG.debug("Opening an unchained snapshot in {}", chainId); @@ -76,8 +76,8 @@ final class ShardDataTreeTransactionChain extends ShardDataTreeTransactionParent @Override void abortFromTransactionActor(final AbstractShardDataTreeTransaction transaction) { if (transaction instanceof ReadWriteShardDataTreeTransaction) { - Preconditions.checkState(openTransaction != null, - "Attempted to abort transaction %s while none is outstanding", transaction); + checkState(openTransaction != null, "Attempted to abort transaction %s while none is outstanding", + transaction); LOG.debug("Aborted open transaction {}", transaction); openTransaction = null; } @@ -92,8 +92,8 @@ final class ShardDataTreeTransactionChain extends ShardDataTreeTransactionParent @Override ShardDataTreeCohort finishTransaction(final ReadWriteShardDataTreeTransaction transaction, final Optional> participatingShardNames) { - Preconditions.checkState(openTransaction != null, - "Attempted to finish transaction %s while none is outstanding", transaction); + checkState(openTransaction != null, "Attempted to finish transaction %s while none is outstanding", + transaction); // dataTree is finalizing ready the transaction, we just record it for the next // transaction in chain