X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=netconf%2Fsal-netconf-connector%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fnetconf%2Fsal%2Fconnect%2Fnetconf%2FNetconfDeviceBuilder.java;h=9d262568e95853a71f391316ed8547e93ea7186b;hb=33d6351332b51e2cfd454daf673c7663b03f096c;hp=f5521e61f4acca2f876d1fa5aba457de6ebb6212;hpb=9c56fbbb1c62243df9baa3b95140153f91ffdde9;p=netconf.git diff --git a/netconf/sal-netconf-connector/src/main/java/org/opendaylight/netconf/sal/connect/netconf/NetconfDeviceBuilder.java b/netconf/sal-netconf-connector/src/main/java/org/opendaylight/netconf/sal/connect/netconf/NetconfDeviceBuilder.java index f5521e61f4..9d262568e9 100644 --- a/netconf/sal-netconf-connector/src/main/java/org/opendaylight/netconf/sal/connect/netconf/NetconfDeviceBuilder.java +++ b/netconf/sal-netconf-connector/src/main/java/org/opendaylight/netconf/sal/connect/netconf/NetconfDeviceBuilder.java @@ -9,10 +9,14 @@ package org.opendaylight.netconf.sal.connect.netconf; import com.google.common.base.Preconditions; -import java.util.concurrent.ExecutorService; +import com.google.common.util.concurrent.ListeningExecutorService; +import io.netty.util.concurrent.EventExecutor; +import org.opendaylight.netconf.sal.connect.api.DeviceActionFactory; import org.opendaylight.netconf.sal.connect.api.RemoteDeviceHandler; import org.opendaylight.netconf.sal.connect.netconf.listener.NetconfSessionPreferences; import org.opendaylight.netconf.sal.connect.util.RemoteDeviceId; +import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.node.optional.rev190614.NetconfNodeAugmentedOptional; +import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.node.topology.rev150114.NetconfNode; public class NetconfDeviceBuilder { @@ -20,45 +24,71 @@ public class NetconfDeviceBuilder { private NetconfDevice.SchemaResourcesDTO schemaResourcesDTO; private RemoteDeviceId id; private RemoteDeviceHandler salFacade; - private ExecutorService globalProcessingExecutor; + private ListeningExecutorService globalProcessingExecutor; + private DeviceActionFactory deviceActionFactory; + private NetconfNode node; + private EventExecutor eventExecutor; + private NetconfNodeAugmentedOptional nodeOptional; public NetconfDeviceBuilder() { } - public NetconfDeviceBuilder setReconnectOnSchemasChange(boolean reconnectOnSchemasChange) { + public NetconfDeviceBuilder setReconnectOnSchemasChange(final boolean reconnectOnSchemasChange) { this.reconnectOnSchemasChange = reconnectOnSchemasChange; return this; } - public NetconfDeviceBuilder setId(RemoteDeviceId id) { + public NetconfDeviceBuilder setId(final RemoteDeviceId id) { this.id = id; return this; } - public NetconfDeviceBuilder setSchemaResourcesDTO(NetconfDevice.SchemaResourcesDTO schemaResourcesDTO) { + public NetconfDeviceBuilder setSchemaResourcesDTO(final NetconfDevice.SchemaResourcesDTO schemaResourcesDTO) { this.schemaResourcesDTO = schemaResourcesDTO; return this; } - public NetconfDeviceBuilder setSalFacade(RemoteDeviceHandler salFacade) { + public NetconfDeviceBuilder setSalFacade(final RemoteDeviceHandler salFacade) { this.salFacade = salFacade; return this; } - public NetconfDeviceBuilder setGlobalProcessingExecutor(ExecutorService globalProcessingExecutor) { + public NetconfDeviceBuilder setGlobalProcessingExecutor(final ListeningExecutorService globalProcessingExecutor) { this.globalProcessingExecutor = globalProcessingExecutor; return this; } + public NetconfDeviceBuilder setDeviceActionFactory(final DeviceActionFactory deviceActionFactory) { + this.deviceActionFactory = deviceActionFactory; + return this; + } + + public NetconfDeviceBuilder setNode(final NetconfNode node) { + this.node = node; + return this; + } + + public NetconfDeviceBuilder setEventExecutor(final EventExecutor eventExecutor) { + this.eventExecutor = eventExecutor; + return this; + } + + public NetconfDeviceBuilder setNodeOptional(final NetconfNodeAugmentedOptional nodeOptional) { + this.nodeOptional = nodeOptional; + return this; + } + public NetconfDevice build() { validation(); - return new NetconfDevice(schemaResourcesDTO, id, salFacade, globalProcessingExecutor, reconnectOnSchemasChange); + return new NetconfDevice(this.schemaResourcesDTO, this.id, this.salFacade, this.globalProcessingExecutor, + this.reconnectOnSchemasChange, this.deviceActionFactory, this.node, this.eventExecutor, + this.nodeOptional); } private void validation() { - Preconditions.checkNotNull(id, "RemoteDeviceId is not initialized"); - Preconditions.checkNotNull(salFacade, "RemoteDeviceHandler is not initialized"); - Preconditions.checkNotNull(globalProcessingExecutor, "ExecutorService is not initialized"); - Preconditions.checkNotNull(schemaResourcesDTO, "SchemaResourceDTO is not initialized"); + Preconditions.checkNotNull(this.id, "RemoteDeviceId is not initialized"); + Preconditions.checkNotNull(this.salFacade, "RemoteDeviceHandler is not initialized"); + Preconditions.checkNotNull(this.globalProcessingExecutor, "ExecutorService is not initialized"); + Preconditions.checkNotNull(this.schemaResourcesDTO, "SchemaResourceDTO is not initialized"); } }