Moti Asayag has uploaded a new change for review.

Change subject: engine: Extract AddNetworksByLabelParametersBuilder
......................................................................

engine: Extract AddNetworksByLabelParametersBuilder

The class will be used for attaching networks to host
when networks is assigned to a cluster.

Change-Id: I6510892f217c0472d6d79ab5884bb9c082a58bf1
Bug-Url: https://bugzilla.redhat.com/1054195
Signed-off-by: Moti Asayag <masa...@redhat.com>
---
A 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/AddNetworksByLabelParametersBuilder.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/LabelNicCommand.java
2 files changed, 79 insertions(+), 67 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/98/23498/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/AddNetworksByLabelParametersBuilder.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/AddNetworksByLabelParametersBuilder.java
new file mode 100644
index 0000000..e672c5b
--- /dev/null
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/AddNetworksByLabelParametersBuilder.java
@@ -0,0 +1,78 @@
+package org.ovirt.engine.core.bll.network;
+
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import org.ovirt.engine.core.common.action.SetupNetworksParameters;
+import org.ovirt.engine.core.common.businessentities.Entities;
+import org.ovirt.engine.core.common.businessentities.network.Network;
+import 
org.ovirt.engine.core.common.businessentities.network.VdsNetworkInterface;
+import org.ovirt.engine.core.common.errors.VdcBLLException;
+import org.ovirt.engine.core.common.errors.VdcBllErrors;
+
+public class AddNetworksByLabelParametersBuilder extends 
NetworkParametersBuilder {
+
+    /**
+     * Adds a list of labeled networks to a given interface
+     */
+    public SetupNetworksParameters buildParameters(VdsNetworkInterface nic,
+            String label,
+            List<Network> labeledNetworks) {
+        SetupNetworksParameters parameters = 
createSetupNetworksParameters(nic.getVdsId());
+        Set<Network> networkToAdd = 
getNetworksToConfigure(parameters.getInterfaces(), labeledNetworks);
+        VdsNetworkInterface nicToConfigure = 
getNicToConfigure(parameters.getInterfaces(), nic.getId());
+        if (nicToConfigure == null) {
+            throw new 
VdcBLLException(VdcBllErrors.LABELED_NETWORK_INTERFACE_NOT_FOUND);
+        }
+
+        // add label to nic to be passed to setup-networks
+        labelConfiguredNic(label, nicToConfigure);
+
+        // configure networks on the nic
+        parameters.getInterfaces().addAll(configureNetworks(nicToConfigure, 
networkToAdd));
+        return parameters;
+    }
+
+    public void labelConfiguredNic(String label, VdsNetworkInterface 
nicToConfigure) {
+        if (nicToConfigure.getLabels() == null) {
+            nicToConfigure.setLabels(new HashSet<String>());
+        }
+
+        nicToConfigure.getLabels().add(label);
+    }
+
+    public Set<Network> getNetworksToConfigure(List<VdsNetworkInterface> nics, 
List<Network> labeledNetworks) {
+        Map<String, VdsNetworkInterface> nicsByNetworkName = 
Entities.hostInterfacesByNetworkName(nics);
+        Set<Network> networkToAdd = new HashSet<>();
+
+        for (Network network : labeledNetworks) {
+            if (!nicsByNetworkName.containsKey(network.getName())) {
+                networkToAdd.add(network);
+            }
+        }
+
+        return networkToAdd;
+    }
+
+    /**
+     * Configure the networks on a specific nic and/or returns a list of vlans 
as new added interfaces configured
+     * with vlan networks
+     *
+     * @param nic
+     *            the underlying interface to configure
+     * @param networks
+     *            the networks to configure on the nic
+     * @return a list of vlan devices or an empty list
+     */
+    public List<VdsNetworkInterface> configureNetworks(VdsNetworkInterface 
nic, Set<Network> networks) {
+        List<VdsNetworkInterface> vlans = new ArrayList<>();
+        for (Network network : networks) {
+            configureNetwork(nic, vlans, network);
+        }
+
+        return vlans;
+    }
+}
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/LabelNicCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/LabelNicCommand.java
index 35fb57c..7439865 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/LabelNicCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/LabelNicCommand.java
@@ -2,26 +2,21 @@
 
 import java.util.ArrayList;
 import java.util.Collections;
-import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
-import java.util.Set;
 
 import org.apache.commons.lang.StringUtils;
 import org.ovirt.engine.core.bll.CommandBase;
-import org.ovirt.engine.core.bll.network.NetworkParametersBuilder;
+import org.ovirt.engine.core.bll.network.AddNetworksByLabelParametersBuilder;
 import org.ovirt.engine.core.bll.utils.PermissionSubject;
 import org.ovirt.engine.core.common.AuditLogType;
 import org.ovirt.engine.core.common.VdcObjectType;
 import org.ovirt.engine.core.common.action.LabelNicParameters;
-import org.ovirt.engine.core.common.action.SetupNetworksParameters;
 import org.ovirt.engine.core.common.action.VdcActionType;
 import org.ovirt.engine.core.common.action.VdcReturnValueBase;
 import org.ovirt.engine.core.common.businessentities.Entities;
 import org.ovirt.engine.core.common.businessentities.network.Network;
 import 
org.ovirt.engine.core.common.businessentities.network.VdsNetworkInterface;
-import org.ovirt.engine.core.common.errors.VdcBLLException;
-import org.ovirt.engine.core.common.errors.VdcBllErrors;
 import org.ovirt.engine.core.common.errors.VdcBllMessages;
 import org.ovirt.engine.core.common.utils.ValidationUtils;
 import org.ovirt.engine.core.compat.Guid;
@@ -148,66 +143,5 @@
         return Collections.singletonList(new PermissionSubject(hostId,
                 VdcObjectType.VDS,
                 getActionType().getActionGroup()));
-    }
-
-    private class AddNetworksByLabelParametersBuilder extends 
NetworkParametersBuilder {
-
-        public SetupNetworksParameters buildParameters(VdsNetworkInterface nic,
-                String label,
-                List<Network> labeledNetworks) {
-            SetupNetworksParameters parameters = 
createSetupNetworksParameters(nic.getVdsId());
-            Set<Network> networkToAdd = 
getNetworksToConfigure(parameters.getInterfaces(), labeledNetworks);
-            VdsNetworkInterface nicToConfigure = 
getNicToConfigure(parameters.getInterfaces(), nic.getId());
-            if (nicToConfigure == null) {
-                throw new 
VdcBLLException(VdcBllErrors.LABELED_NETWORK_INTERFACE_NOT_FOUND);
-            }
-
-            // add label to nic to be passed to setup-networks
-            labelConfiguredNic(label, nicToConfigure);
-
-            // configure networks on the nic
-            
parameters.getInterfaces().addAll(configureNetworks(nicToConfigure, 
networkToAdd));
-            return parameters;
-        }
-
-        public void labelConfiguredNic(String label, VdsNetworkInterface 
nicToConfigure) {
-            if (nicToConfigure.getLabels() == null) {
-                nicToConfigure.setLabels(new HashSet<String>());
-            }
-
-            nicToConfigure.getLabels().add(label);
-        }
-
-        public Set<Network> getNetworksToConfigure(List<VdsNetworkInterface> 
nics, List<Network> labeledNetworks) {
-            Map<String, VdsNetworkInterface> nicsByNetworkName = 
Entities.hostInterfacesByNetworkName(nics);
-            Set<Network> networkToAdd = new HashSet<>();
-
-            for (Network network : labeledNetworks) {
-                if (!nicsByNetworkName.containsKey(network.getName())) {
-                    networkToAdd.add(network);
-                }
-            }
-
-            return networkToAdd;
-        }
-
-        /**
-         * Configure the networks on a specific nic and/or returns a list of 
vlans as new added interfaces configured
-         * with vlan networks
-         *
-         * @param nic
-         *            the underlying interface to configure
-         * @param networks
-         *            the networks to configure on the nic
-         * @return a list of vlan devices or an empty list
-         */
-        public List<VdsNetworkInterface> configureNetworks(VdsNetworkInterface 
nic, Set<Network> networks) {
-            List<VdsNetworkInterface> vlans = new ArrayList<>();
-            for (Network network : networks) {
-                configureNetwork(nic, vlans, network);
-            }
-
-            return vlans;
-        }
     }
 }


-- 
To view, visit http://gerrit.ovirt.org/23498
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I6510892f217c0472d6d79ab5884bb9c082a58bf1
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: ovirt-engine-3.4
Gerrit-Owner: Moti Asayag <masa...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to