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=aa22e877a4f8df4f39d58cb2ba7be725bc3238dc;hpb=294e250fa1c11f36a6ddb9470f985df978039355;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 aa22e877a4..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.NetconfSessionCapabilities; +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; @@ -33,19 +35,19 @@ import org.opendaylight.yangtools.yang.model.api.SchemaContext; final class NetconfDeviceDataBroker implements DOMDataBroker { private final RemoteDeviceId id; private final NetconfBaseOps netconfOps; - private final NetconfSessionCapabilities netconfSessionPreferences; - private final DataNormalizer normalizer; + private final NetconfSessionPreferences netconfSessionPreferences; + private final long defaultRequestTimeoutMillis; - public NetconfDeviceDataBroker(final RemoteDeviceId id, final RpcImplementation rpc, final SchemaContext schemaContext, final NetconfSessionCapabilities 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(); + } + }