1 package org.opendaylight.controller.sal.binding.impl;
\r
4 import java.util.concurrent.Future;
\r
5 import java.util.concurrent.atomic.AtomicLong;
\r
7 import org.opendaylight.controller.md.sal.common.impl.service.AbstractDataBroker;
\r
8 import org.opendaylight.controller.sal.binding.api.data.DataChangeListener;
\r
9 import org.opendaylight.controller.sal.binding.api.data.DataProviderService;
\r
10 import org.opendaylight.controller.sal.binding.impl.util.BindingAwareDataReaderRouter;
\r
11 import org.opendaylight.controller.sal.common.DataStoreIdentifier;
\r
12 import org.opendaylight.yangtools.yang.binding.DataObject;
\r
13 import org.opendaylight.yangtools.yang.binding.DataRoot;
\r
14 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
\r
15 import org.opendaylight.yangtools.yang.common.RpcResult;
\r
18 public class DataBrokerImpl extends AbstractDataBroker<InstanceIdentifier<? extends DataObject>, DataObject, DataChangeListener> implements
\r
19 DataProviderService, AutoCloseable {
\r
21 private final AtomicLong nextTransaction = new AtomicLong();
\r
22 private final AtomicLong createdTransactionsCount = new AtomicLong();
\r
24 public AtomicLong getCreatedTransactionsCount() {
\r
25 return createdTransactionsCount;
\r
28 public DataBrokerImpl() {
\r
29 setDataReadRouter(new BindingAwareDataReaderRouter());
\r
33 public DataTransactionImpl beginTransaction() {
\r
34 String transactionId = "BA-" + nextTransaction.getAndIncrement();
\r
35 createdTransactionsCount.getAndIncrement();
\r
36 return new DataTransactionImpl(transactionId,this);
\r
41 public <T extends DataRoot> T getData(DataStoreIdentifier store, Class<T> rootType) {
\r
42 throw new UnsupportedOperationException("Deprecated");
\r
47 public <T extends DataRoot> T getData(DataStoreIdentifier store, T filter) {
\r
48 throw new UnsupportedOperationException("Deprecated");
\r
53 public <T extends DataRoot> T getCandidateData(DataStoreIdentifier store, Class<T> rootType) {
\r
54 throw new UnsupportedOperationException("Deprecated");
\r
59 public <T extends DataRoot> T getCandidateData(DataStoreIdentifier store, T filter) {
\r
60 throw new UnsupportedOperationException("Deprecated");
\r
65 public RpcResult<DataRoot> editCandidateData(DataStoreIdentifier store, DataRoot changeSet) {
\r
66 throw new UnsupportedOperationException("Deprecated");
\r
71 public Future<RpcResult<Void>> commit(DataStoreIdentifier store) {
\r
72 throw new UnsupportedOperationException("Deprecated");
\r
77 public DataObject getData(InstanceIdentifier<? extends DataObject> data) {
\r
78 throw new UnsupportedOperationException("Deprecated");
\r
83 public DataObject getConfigurationData(InstanceIdentifier<?> data) {
\r
84 throw new UnsupportedOperationException("Deprecated");
\r
89 public void registerChangeListener(InstanceIdentifier<? extends DataObject> path, DataChangeListener changeListener) {
\r
90 throw new UnsupportedOperationException("Deprecated");
\r
95 public void unregisterChangeListener(InstanceIdentifier<? extends DataObject> path,
\r
96 DataChangeListener changeListener) {
\r
97 throw new UnsupportedOperationException("Deprecated");
\r
101 public void close() throws Exception {
\r
107 protected boolean isAffectedBy(InstanceIdentifier<? extends DataObject> key,
108 Set<InstanceIdentifier<? extends DataObject>> paths) {
109 if (paths.contains(key)) {
112 for (InstanceIdentifier<?> path : paths) {
113 if (key.containsWildcarded(path)) {