public class TracingBroker extends Object implements TracingDOMDataBroker
Constructor and Description |
---|
TracingBroker(String type,
DOMDataBroker delegate,
Config config,
org.opendaylight.mdsal.binding.dom.codec.api.BindingNormalizedNodeSerializer codec) |
Modifier and Type | Method and Description |
---|---|
DOMTransactionChain |
createTransactionChain(TransactionChainListener transactionChainListener)
Create a new transaction chain.
|
Map<Class<? extends DOMDataBrokerExtension>,DOMDataBrokerExtension> |
getSupportedExtensions()
Return a map of currently-supported extensions, along with accessor services
which provide access to the specific functionality bound to this service.
|
DOMDataReadOnlyTransaction |
newReadOnlyTransaction()
Allocates a new read-only transaction which provides an immutable snapshot of the data tree.
|
DOMDataReadWriteTransaction |
newReadWriteTransaction()
Allocates new read-write transaction which provides a mutable view of the data
tree.
|
DOMDataWriteTransaction |
newWriteOnlyTransaction()
Allocates new write-only transaction based on latest state of data
tree.
|
boolean |
printOpenTransactions(PrintStream ps,
int minOpenTXs)
Prints a human-readable "report" of all opened but not closed transactions,
including transactions chains and transactions opened by them, onto the printStream.
|
void |
watchRegistrations(String iidString,
LogicalDatastoreType store)
Log registrations to this subtree of the md-sal.
|
void |
watchWrites(String iidString,
LogicalDatastoreType store)
Log writes to this subtree of the md-sal.
|
public TracingBroker(String type, DOMDataBroker delegate, Config config, org.opendaylight.mdsal.binding.dom.codec.api.BindingNormalizedNodeSerializer codec)
public void watchRegistrations(String iidString, LogicalDatastoreType store)
iidString
- the iid path of the root of the subtreestore
- Which LogicalDataStore? or null for bothpublic void watchWrites(String iidString, LogicalDatastoreType store)
iidString
- the iid path of the root of the subtreestore
- Which LogicalDataStore? or null for bothpublic DOMDataReadWriteTransaction 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.submit()
for more
details about conflicting and not-conflicting changes and
failure scenarios.
newReadWriteTransaction
in interface AsyncDataBroker<org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier,org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode<?,?>>
newReadWriteTransaction
in interface AsyncDataTransactionFactory<org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier,org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode<?,?>>
newReadWriteTransaction
in interface DOMDataBroker
public DOMDataWriteTransaction 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.submit()
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.submit()
.
Exclusivity of writers to particular subtree SHOULD BE enforced by external locking mechanism.
newWriteOnlyTransaction
in interface AsyncDataBroker<org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier,org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode<?,?>>
newWriteOnlyTransaction
in interface AsyncDataTransactionFactory<org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier,org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode<?,?>>
newWriteOnlyTransaction
in interface DOMDataBroker
public DOMTransactionChain createTransactionChain(TransactionChainListener transactionChainListener)
TransactionChainFactory
createTransactionChain
in interface TransactionChainFactory<org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier,org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode<?,?>>
createTransactionChain
in interface DOMDataBroker
transactionChainListener
- Transaction chain event listenerpublic DOMDataReadOnlyTransaction newReadOnlyTransaction()
AsyncDataTransactionFactory
The view of data tree is an immutable snapshot of current data tree state when transaction was allocated.
newReadOnlyTransaction
in interface AsyncDataBroker<org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier,org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode<?,?>>
newReadOnlyTransaction
in interface AsyncDataTransactionFactory<org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier,org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode<?,?>>
newReadOnlyTransaction
in interface DOMDataBroker
@Nonnull public Map<Class<? extends DOMDataBrokerExtension>,DOMDataBrokerExtension> getSupportedExtensions()
DOMExtensibleService
getSupportedExtensions
in interface DOMExtensibleService<DOMDataBroker,DOMDataBrokerExtension>
public boolean printOpenTransactions(PrintStream ps, int minOpenTXs)
TracingDOMDataBroker
printOpenTransactions
in interface TracingDOMDataBroker
minOpenTXs
- minimum open number of transactions (leaks with fewer are not printed)Copyright © 2019 OpenDaylight. All rights reserved.