Prepare netconf to support YANG 1.1 actions
[netconf.git] / netconf / sal-netconf-connector / src / main / java / org / opendaylight / netconf / sal / connect / netconf / NetconfDeviceBuilder.java
index f5521e61f4acca2f876d1fa5aba457de6ebb6212..199f0c09f768ec5b952ef2d6d987e02ae7adb450 100644 (file)
@@ -10,6 +10,7 @@ package org.opendaylight.netconf.sal.connect.netconf;
 
 import com.google.common.base.Preconditions;
 import java.util.concurrent.ExecutorService;
+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;
@@ -21,6 +22,7 @@ public class NetconfDeviceBuilder {
     private RemoteDeviceId id;
     private RemoteDeviceHandler<NetconfSessionPreferences> salFacade;
     private ExecutorService globalProcessingExecutor;
+    private DeviceActionFactory deviceActionFactory;
 
     public NetconfDeviceBuilder() {
     }
@@ -50,15 +52,21 @@ public class NetconfDeviceBuilder {
         return this;
     }
 
+    public NetconfDeviceBuilder setDeviceActionFactory(DeviceActionFactory deviceActionFactory) {
+        this.deviceActionFactory = deviceActionFactory;
+        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);
     }
 
     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");
     }
 }