X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-netconf-connector%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Fconnect%2Fnetconf%2Fsal%2FNetconfDeviceDataBroker.java;h=8b7ea6caa8cb6370a8830c3da12643a3c38269b3;hb=refs%2Fchanges%2F12%2F20512%2F3;hp=87ca11de87462c253f9845b07dc609b624a27e5b;hpb=83dfe301bf2a2b1eff6883a2af3282c95d5a752e;p=controller.git diff --git a/opendaylight/md-sal/sal-netconf-connector/src/main/java/org/opendaylight/controller/sal/connect/netconf/sal/NetconfDeviceDataBroker.java b/opendaylight/md-sal/sal-netconf-connector/src/main/java/org/opendaylight/controller/sal/connect/netconf/sal/NetconfDeviceDataBroker.java index 87ca11de87..8b7ea6caa8 100644 --- a/opendaylight/md-sal/sal-netconf-connector/src/main/java/org/opendaylight/controller/sal/connect/netconf/sal/NetconfDeviceDataBroker.java +++ b/opendaylight/md-sal/sal-netconf-connector/src/main/java/org/opendaylight/controller/sal/connect/netconf/sal/NetconfDeviceDataBroker.java @@ -8,24 +8,26 @@ package org.opendaylight.controller.sal.connect.netconf.sal; +import java.util.Collections; +import java.util.Map; import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType; import org.opendaylight.controller.md.sal.common.api.data.TransactionChainListener; -import org.opendaylight.controller.md.sal.common.impl.util.compat.DataNormalizer; import org.opendaylight.controller.md.sal.dom.api.DOMDataBroker; +import org.opendaylight.controller.md.sal.dom.api.DOMDataBrokerExtension; import org.opendaylight.controller.md.sal.dom.api.DOMDataChangeListener; import org.opendaylight.controller.md.sal.dom.api.DOMDataReadOnlyTransaction; import org.opendaylight.controller.md.sal.dom.api.DOMDataReadWriteTransaction; import org.opendaylight.controller.md.sal.dom.api.DOMDataWriteTransaction; +import org.opendaylight.controller.md.sal.dom.api.DOMRpcService; import org.opendaylight.controller.md.sal.dom.api.DOMTransactionChain; import org.opendaylight.controller.sal.connect.netconf.listener.NetconfSessionPreferences; import org.opendaylight.controller.sal.connect.netconf.sal.tx.ReadOnlyTx; import org.opendaylight.controller.sal.connect.netconf.sal.tx.ReadWriteTx; -import org.opendaylight.controller.sal.connect.netconf.sal.tx.WriteCandidateTx; import org.opendaylight.controller.sal.connect.netconf.sal.tx.WriteCandidateRunningTx; +import org.opendaylight.controller.sal.connect.netconf.sal.tx.WriteCandidateTx; import org.opendaylight.controller.sal.connect.netconf.sal.tx.WriteRunningTx; import org.opendaylight.controller.sal.connect.netconf.util.NetconfBaseOps; import org.opendaylight.controller.sal.connect.util.RemoteDeviceId; -import org.opendaylight.controller.sal.core.api.RpcImplementation; import org.opendaylight.yangtools.concepts.ListenerRegistration; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.model.api.SchemaContext; @@ -34,18 +36,18 @@ final class NetconfDeviceDataBroker implements DOMDataBroker { private final RemoteDeviceId id; private final NetconfBaseOps netconfOps; private final NetconfSessionPreferences netconfSessionPreferences; - private final DataNormalizer normalizer; + private final long defaultRequestTimeoutMillis; - public NetconfDeviceDataBroker(final RemoteDeviceId id, final RpcImplementation rpc, final SchemaContext schemaContext, final NetconfSessionPreferences netconfSessionPreferences) { + public NetconfDeviceDataBroker(final RemoteDeviceId id, final SchemaContext schemaContext, final DOMRpcService rpc, final NetconfSessionPreferences netconfSessionPreferences, long defaultRequestTimeoutMillis) { this.id = id; - this.netconfOps = new NetconfBaseOps(rpc); + this.netconfOps = new NetconfBaseOps(rpc, schemaContext); this.netconfSessionPreferences = netconfSessionPreferences; - normalizer = new DataNormalizer(schemaContext); + this.defaultRequestTimeoutMillis = defaultRequestTimeoutMillis; } @Override public DOMDataReadOnlyTransaction newReadOnlyTransaction() { - return new ReadOnlyTx(netconfOps, normalizer, id); + return new ReadOnlyTx(netconfOps, id); } @Override @@ -57,12 +59,12 @@ final class NetconfDeviceDataBroker implements DOMDataBroker { public DOMDataWriteTransaction newWriteOnlyTransaction() { if(netconfSessionPreferences.isCandidateSupported()) { if(netconfSessionPreferences.isRunningWritable()) { - return new WriteCandidateRunningTx(id, netconfOps, normalizer, netconfSessionPreferences); + return new WriteCandidateRunningTx(id, netconfOps, netconfSessionPreferences, defaultRequestTimeoutMillis); } else { - return new WriteCandidateTx(id, netconfOps, normalizer, netconfSessionPreferences); + return new WriteCandidateTx(id, netconfOps, netconfSessionPreferences, defaultRequestTimeoutMillis); } } else { - return new WriteRunningTx(id, netconfOps, normalizer, netconfSessionPreferences); + return new WriteRunningTx(id, netconfOps, netconfSessionPreferences, defaultRequestTimeoutMillis); } } @@ -76,4 +78,9 @@ final class NetconfDeviceDataBroker implements DOMDataBroker { throw new UnsupportedOperationException(id + ": Transaction chains not supported for netconf mount point"); } + @Override + public Map, DOMDataBrokerExtension> getSupportedExtensions() { + return Collections.emptyMap(); + } + }