P
- Type of path (subtree identifier), which represents location in
treeD
- Type of data (payload), which represents data payloadpublic interface AsyncReadTransaction<P extends org.opendaylight.yangtools.concepts.Path<P>,D> extends AsyncTransaction<P,D>
View of the data tree is a stable point-in-time snapshot of the current data tree state when the transaction was created. It's state and underlying data tree is not affected by other concurrently running transactions.
Implementation Note: This interface is not intended to be implemented by users of MD-SAL, but only to be consumed by them.
PATH
is A
.
txRead = broker.newReadOnlyTransaction(); // read Transaction is snapshot of data txWrite = broker.newReadWriteTransactoin(); // concurrent write transaction txRead.read(OPERATIONAL,PATH).get(); // will return Optional containing A txWrite = broker.put(OPERATIONAL,PATH,B); // writes B to PATH txRead.read(OPERATIONAL,PATH).get(); // still returns Optional containing A txWrite.commit().get(); // data tree is updated, PATH contains B txRead.read(OPERATIONAL,PATH).get(); // still returns Optional containing A txAfterCommit = broker.newReadOnlyTransaction(); // read Transaction is snapshot of new state txAfterCommit.read(OPERATIONAL,PATH).get(); // returns Optional containing B;
Note: example contains blocking calls on future only to illustrate
that action happened after other asynchronous action. Use of blocking call
Future.get()
is discouraged for most
uses and you should use
Futures.addCallback(com.google.common.util.concurrent.ListenableFuture,
com.google.common.util.concurrent.FutureCallback, java.util.concurrent.Executor)
or other functions from Futures
to
register more specific listeners.
getIdentifier
Copyright © 2019 OpenDaylight. All rights reserved.