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%2FAbstractTransactionContext.java;fp=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2FAbstractTransactionContext.java;h=d94e1c691e704051a81f74c2ba3ec135e1da002e;hp=933e87ace2588388a624783960788a7a3c01bbd5;hb=a039b8a0d1592967542b199ed1634a04c40a99c5;hpb=3d256dbaa5db779d7883398a6f44badf88955eaf;ds=sidebyside diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/AbstractTransactionContext.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/AbstractTransactionContext.java index 933e87ace2..d94e1c691e 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/AbstractTransactionContext.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/AbstractTransactionContext.java @@ -7,22 +7,40 @@ */ package org.opendaylight.controller.cluster.datastore; -import com.google.common.collect.Lists; +import com.google.common.collect.ImmutableList; +import java.util.ArrayList; +import java.util.Collection; import java.util.List; import org.opendaylight.controller.cluster.datastore.identifiers.TransactionIdentifier; import scala.concurrent.Future; abstract class AbstractTransactionContext implements TransactionContext { - protected final TransactionIdentifier identifier; - protected final List> recordedOperationFutures = Lists.newArrayList(); + private final List> recordedOperationFutures = new ArrayList<>(); + private final TransactionIdentifier identifier; - AbstractTransactionContext(TransactionIdentifier identifier) { + protected AbstractTransactionContext(TransactionIdentifier identifier) { this.identifier = identifier; } @Override - public List> getRecordedOperationFutures() { - return recordedOperationFutures; + public final void copyRecordedOperationFutures(Collection> target) { + target.addAll(recordedOperationFutures); } -} \ No newline at end of file + + protected final TransactionIdentifier getIdentifier() { + return identifier; + } + + protected final Collection> copyRecordedOperationFutures() { + return ImmutableList.copyOf(recordedOperationFutures); + } + + protected final int recordedOperationCount() { + return recordedOperationFutures.size(); + } + + protected final void recordOperationFuture(Future future) { + recordedOperationFutures.add(future); + } +}