public interface DataBroker extends AsyncDataBroker<InstanceIdentifier<?>,DataObject>, TransactionChainFactory<InstanceIdentifier<?>,DataObject>, TransactionFactory, BindingService, DataTreeChangeService
For more information on usage, please see the documentation in AsyncDataBroker
.
AsyncDataBroker
,
TransactionChainFactory
Modifier and Type | Method and Description |
---|---|
BindingTransactionChain |
createTransactionChain(TransactionChainListener listener)
Create a new transaction chain.
|
ReadTransaction |
newReadOnlyTransaction()
Allocates a new read-only transaction which provides an immutable snapshot of
the data tree.
|
ReadWriteTransaction |
newReadWriteTransaction()
Allocates new read-write transaction which provides a mutable view of the data tree.
|
WriteTransaction |
newWriteOnlyTransaction()
Allocates new write-only transaction based on latest state of data tree.
|
registerDataTreeChangeListener
ReadTransaction newReadOnlyTransaction()
AsyncDataTransactionFactory
The view of data tree is an immutable snapshot of current data tree state when transaction was allocated.
newReadOnlyTransaction
in interface AsyncDataBroker<InstanceIdentifier<?>,DataObject>
newReadOnlyTransaction
in interface AsyncDataTransactionFactory<InstanceIdentifier<?>,DataObject>
newReadOnlyTransaction
in interface TransactionFactory
WriteTransaction newWriteOnlyTransaction()
AsyncDataTransactionFactory
Preconditions for mutation of data tree are captured from the snapshot of data tree state,
when the transaction is allocated. If data was changed during transaction in an incompatible
way then the commit of this transaction will fail. See AsyncWriteTransaction.commit()
for more details about conflicting and not-conflicting changes and failure scenarios.
Since this transaction does not provide a view of the data it SHOULD BE used only by callers
which are exclusive writers (exporters of data) to the subtree they modify. This prevents
optimistic lock failures as described in AsyncWriteTransaction.commit()
.
Exclusivity of writers to particular subtree SHOULD BE enforced by external locking mechanism.
newWriteOnlyTransaction
in interface AsyncDataBroker<InstanceIdentifier<?>,DataObject>
newWriteOnlyTransaction
in interface AsyncDataTransactionFactory<InstanceIdentifier<?>,DataObject>
newWriteOnlyTransaction
in interface TransactionFactory
ReadWriteTransaction newReadWriteTransaction()
AsyncDataTransactionFactory
Preconditions for mutation of data tree are captured from the snapshot of data tree state, when the transaction
is allocated. If data was changed during transaction in an incompatible way then the commit of this transaction
will fail. See AsyncWriteTransaction.commit()
for more details about conflicting and not-conflicting
changes and failure scenarios.
newReadWriteTransaction
in interface AsyncDataBroker<InstanceIdentifier<?>,DataObject>
newReadWriteTransaction
in interface AsyncDataTransactionFactory<InstanceIdentifier<?>,DataObject>
BindingTransactionChain createTransactionChain(TransactionChainListener listener)
TransactionChainFactory
createTransactionChain
in interface TransactionChainFactory<InstanceIdentifier<?>,DataObject>
listener
- Transaction chain event listenerCopyright © 2019 OpenDaylight. All rights reserved.