}
@Override
- void abortTransaction(final AbstractShardDataTreeTransaction<?> transaction, final Runnable callback) {
+ void abortFromTransactionActor(final AbstractShardDataTreeTransaction<?> transaction) {
if (transaction instanceof ReadWriteShardDataTreeTransaction) {
Preconditions.checkState(openTransaction != null,
"Attempted to abort transaction %s while none is outstanding", transaction);
LOG.debug("Aborted open transaction {}", transaction);
openTransaction = null;
}
-
- dataTree.abortTransaction(transaction, callback);
}
@Override
- void purgeTransaction(final TransactionIdentifier id, final Runnable callback) {
- dataTree.purgeTransaction(id, callback);
+ void abortTransaction(final AbstractShardDataTreeTransaction<?> transaction, final Runnable callback) {
+ abortFromTransactionActor(transaction);
+ dataTree.abortTransaction(transaction, callback);
}
@Override
}
@Override
- ShardDataTreeCohort createReadyCohort(final TransactionIdentifier txId, final DataTreeModification modification) {
- return dataTree.createReadyCohort(txId, modification);
+ ShardDataTreeCohort createFailedCohort(final TransactionIdentifier txId, final DataTreeModification mod,
+ final Exception failure) {
+ return dataTree.createFailedCohort(txId, mod, failure);
+ }
+
+ @Override
+ ShardDataTreeCohort createReadyCohort(final TransactionIdentifier txId, final DataTreeModification mod) {
+ return dataTree.createReadyCohort(txId, mod);
}
}