Code Review
/
controller.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
CDS: Implement front-end support for local transactions
[controller.git]
/
opendaylight
/
md-sal
/
sal-dom-spi
/
src
/
main
/
java
/
org
/
opendaylight
/
controller
/
sal
/
core
/
spi
/
data
/
AbstractSnapshotBackedTransactionChain.java
diff --git
a/opendaylight/md-sal/sal-dom-spi/src/main/java/org/opendaylight/controller/sal/core/spi/data/AbstractSnapshotBackedTransactionChain.java
b/opendaylight/md-sal/sal-dom-spi/src/main/java/org/opendaylight/controller/sal/core/spi/data/AbstractSnapshotBackedTransactionChain.java
index b7776b2a397940745501a6c87ffcdd5625d10dcc..7683937ce2799a31761b23d3e805f2524b1d590c 100644
(file)
--- a/
opendaylight/md-sal/sal-dom-spi/src/main/java/org/opendaylight/controller/sal/core/spi/data/AbstractSnapshotBackedTransactionChain.java
+++ b/
opendaylight/md-sal/sal-dom-spi/src/main/java/org/opendaylight/controller/sal/core/spi/data/AbstractSnapshotBackedTransactionChain.java
@@
-120,19
+120,26
@@
public abstract class AbstractSnapshotBackedTransactionChain<T> extends Transact
@Override
public final DOMStoreReadTransaction newReadOnlyTransaction() {
@Override
public final DOMStoreReadTransaction newReadOnlyTransaction() {
+ return newReadOnlyTransaction(nextTransactionIdentifier());
+ }
+
+ protected DOMStoreReadTransaction newReadOnlyTransaction(T transactionId) {
final Entry<State, DataTreeSnapshot> entry = getSnapshot();
final Entry<State, DataTreeSnapshot> entry = getSnapshot();
- return SnapshotBackedTransactions.newReadTransaction(
nextTransactionIdentifier()
, getDebugTransactions(), entry.getValue());
+ return SnapshotBackedTransactions.newReadTransaction(
transactionId
, getDebugTransactions(), entry.getValue());
}
@Override
public final DOMStoreReadWriteTransaction newReadWriteTransaction() {
}
@Override
public final DOMStoreReadWriteTransaction newReadWriteTransaction() {
+ return newReadWriteTransaction(nextTransactionIdentifier());
+ }
+
+ protected DOMStoreReadWriteTransaction newReadWriteTransaction(T transactionId) {
Entry<State, DataTreeSnapshot> entry;
DOMStoreReadWriteTransaction ret;
do {
entry = getSnapshot();
Entry<State, DataTreeSnapshot> entry;
DOMStoreReadWriteTransaction ret;
do {
entry = getSnapshot();
- ret = new SnapshotBackedReadWriteTransaction<T>(nextTransactionIdentifier(),
- getDebugTransactions(), entry.getValue(), this);
+ ret = new SnapshotBackedReadWriteTransaction<T>(transactionId, getDebugTransactions(), entry.getValue(), this);
} while (!recordTransaction(entry.getKey(), ret));
return ret;
} while (!recordTransaction(entry.getKey(), ret));
return ret;
@@
-140,13
+147,16
@@
public abstract class AbstractSnapshotBackedTransactionChain<T> extends Transact
@Override
public final DOMStoreWriteTransaction newWriteOnlyTransaction() {
@Override
public final DOMStoreWriteTransaction newWriteOnlyTransaction() {
+ return newWriteOnlyTransaction(nextTransactionIdentifier());
+ }
+
+ protected DOMStoreWriteTransaction newWriteOnlyTransaction(T transactionId) {
Entry<State, DataTreeSnapshot> entry;
DOMStoreWriteTransaction ret;
do {
entry = getSnapshot();
Entry<State, DataTreeSnapshot> entry;
DOMStoreWriteTransaction ret;
do {
entry = getSnapshot();
- ret = new SnapshotBackedWriteTransaction<T>(nextTransactionIdentifier(),
- getDebugTransactions(), entry.getValue(), this);
+ ret = new SnapshotBackedWriteTransaction<T>(transactionId, getDebugTransactions(), entry.getValue(), this);
} while (!recordTransaction(entry.getKey(), ret));
return ret;
} while (!recordTransaction(entry.getKey(), ret));
return ret;