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%2FShardDataTreeTransactionParent.java;h=0db6f083ac655908ae57de374e348d480d430d60;hp=6cc1408eae52bd7fcf8bab941a7d3a5d84e42bc2;hb=HEAD;hpb=56c1339ee7dbd85bc567fc44f21ecfd322c9e803 diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardDataTreeTransactionParent.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardDataTreeTransactionParent.java index 6cc1408eae..d7992596e0 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardDataTreeTransactionParent.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardDataTreeTransactionParent.java @@ -7,9 +7,23 @@ */ package org.opendaylight.controller.cluster.datastore; -import org.opendaylight.controller.sal.core.spi.data.DOMStoreThreePhaseCommitCohort; +import java.util.Optional; +import java.util.SortedSet; +import org.opendaylight.controller.cluster.access.concepts.TransactionIdentifier; +import org.opendaylight.yangtools.yang.data.tree.api.DataTreeModification; abstract class ShardDataTreeTransactionParent { - abstract void abortTransaction(AbstractShardDataTreeTransaction transaction); - abstract DOMStoreThreePhaseCommitCohort finishTransaction(ReadWriteShardDataTreeTransaction transaction); + + abstract void abortFromTransactionActor(AbstractShardDataTreeTransaction transaction); + + abstract void abortTransaction(AbstractShardDataTreeTransaction transaction, Runnable callback); + + abstract ShardDataTreeCohort finishTransaction(ReadWriteShardDataTreeTransaction transaction, + Optional> participatingShardNames); + + abstract ShardDataTreeCohort createReadyCohort(TransactionIdentifier txId, DataTreeModification mod, + Optional> participatingShardNames); + + abstract ShardDataTreeCohort createFailedCohort(TransactionIdentifier txId, DataTreeModification mod, + Exception failure); }