Alona Kaplan has uploaded a new change for review.

Change subject: engine: introducing AddVfsConfigNetworkCommand
......................................................................

engine: introducing AddVfsConfigNetworkCommand

Change-Id: I1b1f7665b609b18dbe38242ca57ef24d3307c4b6
Signed-off-by: Alona Kaplan <alkap...@redhat.com>
---
A 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/AddVfsConfigNetworkCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/validator/VfsConfigValidator.java
M 
backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/validator/VfsConfigValidatorTest.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/AuditLogType.java
A 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VfsConfigNetworkParameters.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllMessages.java
M backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties
M 
frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java
M 
frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
9 files changed, 249 insertions(+), 7 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/50/36650/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/AddVfsConfigNetworkCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/AddVfsConfigNetworkCommand.java
new file mode 100644
index 0000000..e0fdee6
--- /dev/null
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/network/host/AddVfsConfigNetworkCommand.java
@@ -0,0 +1,68 @@
+package org.ovirt.engine.core.bll.network.host;
+
+import java.util.Set;
+
+import org.ovirt.engine.core.bll.context.CommandContext;
+import org.ovirt.engine.core.common.AuditLogType;
+import org.ovirt.engine.core.common.action.VfsConfigNetworkParameters;
+import org.ovirt.engine.core.common.businessentities.network.HostNicVfsConfig;
+import org.ovirt.engine.core.common.businessentities.network.Network;
+import org.ovirt.engine.core.common.errors.VdcBllMessages;
+import org.ovirt.engine.core.compat.Guid;
+
+public class AddVfsConfigNetworkCommand extends 
VfsConfigCommandBase<VfsConfigNetworkParameters> {
+
+    public AddVfsConfigNetworkCommand(VfsConfigNetworkParameters parameters) {
+        this(parameters, null);
+    }
+
+    public AddVfsConfigNetworkCommand(VfsConfigNetworkParameters parameters, 
CommandContext commandContext) {
+        super(parameters, commandContext);
+    }
+
+    @Override
+    protected void executeCommand() {
+        super.executeCommand();
+
+        HostNicVfsConfig oldVfsConfig = getVfsConfig();
+        Set<Guid> networks = getVfsConfig().getNetworks();
+        networks.add(getNetworkId());
+        oldVfsConfig.setNetworks(networks);
+
+        getVfsConfigDao().update(oldVfsConfig);
+
+        setSucceeded(true);
+    }
+
+    @Override
+    protected boolean canDoAction() {
+        boolean isValid = super.canDoAction();
+        if (isValid) {
+            isValid = 
validate(getVfsConfigValidator().settingSpecificNetworksAllowed())
+                    && 
validate(getVfsConfigValidator().networkExists(getNetworkId()))
+                    && 
validate(getVfsConfigValidator().networkNotInVfsConfig(getNetworkId()));
+        }
+
+        return isValid;
+    }
+
+    @Override
+    public AuditLogType getAuditLogTypeValue() {
+        return getSucceeded() ? AuditLogType.UPDATE_HOST_NIC_VFS_CONFIG
+                : AuditLogType.UPDATE_HOST_NIC_VFS_CONFIG_FAILED;
+    }
+
+    @Override
+    protected void setActionMessageParameters() {
+        addCanDoActionMessage(VdcBllMessages.VAR__ACTION__ADD);
+        
addCanDoActionMessage(VdcBllMessages.VAR__TYPE__HOST_NIC_VFS_CONFIG_NETWORK);
+    }
+
+    private Guid getNetworkId() {
+        return getParameters().getNetworkId();
+    }
+
+    private Network getNetwork() {
+        return getNetworkDAO().get(getNetworkId());
+    }
+}
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/validator/VfsConfigValidator.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/validator/VfsConfigValidator.java
index eb71f9e..6be4162 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/validator/VfsConfigValidator.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/validator/VfsConfigValidator.java
@@ -4,6 +4,7 @@
 import org.ovirt.engine.core.common.FeatureSupported;
 import org.ovirt.engine.core.common.businessentities.VDS;
 import org.ovirt.engine.core.common.businessentities.network.HostNicVfsConfig;
+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.VdcBllMessages;
 import org.ovirt.engine.core.compat.Guid;
@@ -20,6 +21,7 @@
     static final String NUM_OF_VFS_REPLACEMENT = "$numOfVfs %d";
     static final String MAX_NUM_OF_VFS_REPLACEMENT = "$maxNumOfVfs %d";
     static final String NETWORK_NAME_REPLACEMENT = "$networkName %s";
+    static final String NETWORK_ID_REPLACEMENT = "$networkId %s";
 
     public VfsConfigValidator(Guid nicId) {
         this.nicId = nicId;
@@ -80,6 +82,42 @@
                 .when(numOfVfs > getOldVfsConfig().getMaxNumOfVfs() || 
numOfVfs < 0);
     }
 
+    /**
+     * @return An error iff <code>allNetworkAllowed</code> is <code>true</code>
+     */
+    public ValidationResult settingSpecificNetworksAllowed() {
+        return 
ValidationResult.failWith(VdcBllMessages.ACTION_TYPE_FAILED_CANNOT_SET_SPECIFIC_NETWORKS,
+                getNicNameReplacement())
+                .when(getOldVfsConfig().isAllNetworksAllowed());
+    }
+
+    /**
+     * @param networkId
+     *
+     * @return An error iff a network with the specified id doesn't exist
+     */
+    public ValidationResult networkExists(Guid networkId) {
+        return 
ValidationResult.failWith(VdcBllMessages.ACTION_TYPE_FAILED_NETWORK_NOT_EXIST,
+                getNicNameReplacement(), String.format(NETWORK_ID_REPLACEMENT, 
networkId))
+                .when(getNetwork(networkId) == null);
+    }
+
+    /**
+     * @param networkId
+     *
+     * @return An error iff the network is already part of the VFs 
configuration
+     */
+    public ValidationResult networkNotInVfsConfig(Guid networkId) {
+        String networkName = getNetwork(networkId).getName();
+        return 
ValidationResult.failWith(VdcBllMessages.ACTION_TYPE_FAILED_NETWORK_ALREADY_IN_VFS_CONFIG,
+                getNicNameReplacement(), 
String.format(NETWORK_NAME_REPLACEMENT, networkName))
+                .when(getOldVfsConfig().getNetworks().contains(networkId));
+    }
+
+    Network getNetwork(Guid networkId) {
+        return getDbFacade().getNetworkDao().get(networkId);
+    }
+
     VdsNetworkInterface getNic() {
         if (nic == null) {
             nic = getDbFacade().getInterfaceDao().get(nicId);
diff --git 
a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/validator/VfsConfigValidatorTest.java
 
b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/validator/VfsConfigValidatorTest.java
index e690e42..db4885f 100644
--- 
a/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/validator/VfsConfigValidatorTest.java
+++ 
b/backend/manager/modules/bll/src/test/java/org/ovirt/engine/core/bll/validator/VfsConfigValidatorTest.java
@@ -7,6 +7,9 @@
 import static 
org.ovirt.engine.core.bll.validator.ValidationResultMatchers.failsWith;
 import static 
org.ovirt.engine.core.bll.validator.ValidationResultMatchers.isValid;
 
+import java.util.HashSet;
+import java.util.Set;
+
 import org.hamcrest.Matcher;
 import org.junit.Before;
 import org.junit.Rule;
@@ -17,6 +20,7 @@
 import org.ovirt.engine.core.bll.ValidationResult;
 import org.ovirt.engine.core.common.businessentities.VDS;
 import org.ovirt.engine.core.common.businessentities.network.HostNicVfsConfig;
+import org.ovirt.engine.core.common.businessentities.network.Network;
 import 
org.ovirt.engine.core.common.businessentities.network.VdsNetworkInterface;
 import org.ovirt.engine.core.common.config.ConfigValues;
 import org.ovirt.engine.core.common.errors.VdcBllMessages;
@@ -26,6 +30,7 @@
 import org.ovirt.engine.core.dao.VdsDAO;
 import org.ovirt.engine.core.dao.network.HostNicVfsConfigDao;
 import org.ovirt.engine.core.dao.network.InterfaceDao;
+import org.ovirt.engine.core.dao.network.NetworkDao;
 import org.ovirt.engine.core.utils.MockConfigRule;
 
 @RunWith(MockitoJUnitRunner.class)
@@ -33,17 +38,26 @@
 
     private static final String CLUSTER_VERSION = "7";
 
+    private static final String NETWORK_NAME = "net";
+
+    private static final String NIC_NAME = "nic";
+
     private static final int NUM_OF_VFS = 5;
 
-    private Guid nicId = Guid.newGuid();
+    private static final Guid NIC_ID = Guid.newGuid();
 
-    private Guid hostId = Guid.newGuid();
+    private static final Guid HOST_ID = Guid.newGuid();
+
+    private static final Guid NETWORK_ID = Guid.newGuid();
 
     @Mock
     private VdsNetworkInterface nic;
 
     @Mock
     private VDS host;
+
+    @Mock
+    private Network network;
 
     @Mock
     private HostNicVfsConfig oldVfsConfig;
@@ -63,6 +77,9 @@
     @Mock
     private VdsDAO vdsDao;
 
+    @Mock
+    private NetworkDao networkDao;
+
     private VfsConfigValidator validator;
 
     @Rule
@@ -75,10 +92,11 @@
         when(dbFacade.getInterfaceDao()).thenReturn(interfaceDao);
         when(dbFacade.getHostNicVfsConfigDao()).thenReturn(vfsConfigDao);
         when(dbFacade.getVdsDao()).thenReturn(vdsDao);
+        when(dbFacade.getNetworkDao()).thenReturn(networkDao);
     }
 
     private void createValidator() {
-        validator = spy(new VfsConfigValidator(nicId));
+        validator = spy(new VfsConfigValidator(NIC_ID));
         doReturn(dbFacade).when(validator).getDbFacade();
     }
 
@@ -95,8 +113,8 @@
     private void sriovFeatureSupportTest(Matcher<ValidationResult> matcher,
             boolean isSupported) {
         simulateNicExists();
-        when(nic.getVdsId()).thenReturn(hostId);
-        when(vdsDao.get(hostId)).thenReturn(host);
+        when(nic.getVdsId()).thenReturn(HOST_ID);
+        when(vdsDao.get(HOST_ID)).thenReturn(host);
         when(host.getVdsGroupCompatibilityVersion()).thenReturn(version);
         when(version.getValue()).thenReturn(CLUSTER_VERSION);
 
@@ -120,12 +138,14 @@
     }
 
     private void simulateNicExists() {
-        when(interfaceDao.get(nicId)).thenReturn(nic);
+        when(interfaceDao.get(NIC_ID)).thenReturn(nic);
+        when(nic.getId()).thenReturn(NIC_ID);
+        when(nic.getName()).thenReturn(NIC_NAME);
     }
 
     private void simulateVfsConfigExists() {
         simulateNicExists();
-        when(vfsConfigDao.getByNicId(nicId)).thenReturn(oldVfsConfig);
+        when(vfsConfigDao.getByNicId(NIC_ID)).thenReturn(oldVfsConfig);
     }
 
     @Test
@@ -191,4 +211,71 @@
         when(oldVfsConfig.getNumOfFreeVfs()).thenReturn(numOfFreeVfs);
     }
 
+    @Test
+    public void settingSpecificNetworksAllowed() {
+        settingSpecificNetworksAllowedTest(true);
+        assertThat(validator.settingSpecificNetworksAllowed(),
+                
failsWith(VdcBllMessages.ACTION_TYPE_FAILED_CANNOT_SET_SPECIFIC_NETWORKS,
+                        String.format(VfsConfigValidator.NIC_NAME_REPLACEMENT, 
nic.getName())));
+    }
+
+    @Test
+    public void settingSpecificNetworksNotAllowed() {
+        settingSpecificNetworksAllowedTest(false);
+        assertThat(validator.settingSpecificNetworksAllowed(), isValid());
+    }
+
+    private void settingSpecificNetworksAllowedTest(boolean 
isAllNetworksAllowed) {
+        simulateVfsConfigExists();
+        
when(oldVfsConfig.isAllNetworksAllowed()).thenReturn(isAllNetworksAllowed);
+    }
+
+    @Test
+    public void networExists() {
+        simulateNicExists();
+        simulateNetworkExists();
+        assertThat(validator.networkExists(NETWORK_ID), isValid());
+    }
+
+    @Test
+    public void networNotExist() {
+        simulateNicExists();
+        assertThat(validator.networkExists(NETWORK_ID),
+                failsWith(VdcBllMessages.ACTION_TYPE_FAILED_NETWORK_NOT_EXIST,
+                        String.format(VfsConfigValidator.NIC_NAME_REPLACEMENT, 
nic.getName()),
+                        
String.format(VfsConfigValidator.NETWORK_ID_REPLACEMENT, NETWORK_ID)));
+    }
+
+    private void simulateNetworkExists() {
+        when(networkDao.get(NETWORK_ID)).thenReturn(network);
+        when(network.getId()).thenReturn(NETWORK_ID);
+        when(network.getName()).thenReturn(NETWORK_NAME);
+    }
+
+    @Test
+    public void networkNotInVfsConfig() {
+        networkNotInVfsConfigTest(false);
+        assertThat(validator.networkNotInVfsConfig(NETWORK_ID), isValid());
+    }
+
+    @Test
+    public void networkInVfsConfigTest() {
+        networkNotInVfsConfigTest(true);
+        assertThat(validator.networkNotInVfsConfig(NETWORK_ID),
+                
failsWith(VdcBllMessages.ACTION_TYPE_FAILED_NETWORK_ALREADY_IN_VFS_CONFIG,
+                        String.format(VfsConfigValidator.NIC_NAME_REPLACEMENT, 
nic.getName()),
+                        
String.format(VfsConfigValidator.NETWORK_NAME_REPLACEMENT, network.getName())));
+    }
+
+    private void networkNotInVfsConfigTest(boolean alreadyInVfsConfig) {
+        simulateVfsConfigExists();
+        simulateNetworkExists();
+
+        Set<Guid> networks = new HashSet<>();
+
+        if (alreadyInVfsConfig) {
+            networks.add(NETWORK_ID);
+        }
+        when(oldVfsConfig.getNetworks()).thenReturn(networks);
+    }
 }
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/AuditLogType.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/AuditLogType.java
index 6b2804b..45520d2 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/AuditLogType.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/AuditLogType.java
@@ -746,6 +746,8 @@
     // SR-IOV
     UPDATE_HOST_NIC_VFS_CONFIG(1191),
     UPDATE_HOST_NIC_VFS_CONFIG_FAILED(1192, AuditLogSeverity.ERROR),
+    ADD_VFS_CONFIG_NETWORK(1193),
+    ADD_VFS_CONFIG_NETWORK_FAILED(1194),
 
     // NUMA
     NUMA_ADD_VM_NUMA_NODE_SUCCESS(1300),
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VfsConfigNetworkParameters.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VfsConfigNetworkParameters.java
new file mode 100644
index 0000000..0e67844
--- /dev/null
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VfsConfigNetworkParameters.java
@@ -0,0 +1,25 @@
+package org.ovirt.engine.core.common.action;
+
+import javax.validation.constraints.NotNull;
+
+import org.ovirt.engine.core.compat.Guid;
+
+public class VfsConfigNetworkParameters extends VfsConfigBaseParameters {
+
+    private static final long serialVersionUID = 8349966455466948610L;
+
+    @NotNull
+    private Guid networkId;
+
+    public VfsConfigNetworkParameters() {
+    }
+
+    public VfsConfigNetworkParameters(Guid nicId, Guid networkId) {
+        super(nicId);
+        this.networkId = networkId;
+    }
+
+    public Guid getNetworkId() {
+        return networkId;
+    }
+}
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllMessages.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllMessages.java
index b76ed84..bc10db7 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllMessages.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllMessages.java
@@ -24,6 +24,7 @@
     VAR__TYPE__VNIC_PROFILE,
     VAR__TYPE__LABEL,
     VAR__TYPE__HOST_NIC_VFS_CONFIG,
+    VAR__TYPE__HOST_NIC_VFS_CONFIG_NETWORK,
     VAR__TYPE__PROVIDER,
     VAR__TYPE__PROVIDER_CERTIFICATE,
     VAR__TYPE__VM_DISK,
@@ -592,6 +593,9 @@
     ACTION_TYPE_FAILED_NIC_IS_NOT_SRIOV_ENABLED(ErrorType.NOT_SUPPORTED),
     ACTION_TYPE_FAILED_NUM_OF_VFS_CANNOT_BE_CHANGED(ErrorType.NOT_SUPPORTED),
     ACTION_TYPE_FAILED_NUM_OF_VFS_NOT_IN_VALID_RANGE(ErrorType.BAD_PARAMETERS),
+    ACTION_TYPE_FAILED_CANNOT_SET_SPECIFIC_NETWORKS(ErrorType.CONFLICT),
+    ACTION_TYPE_FAILED_NETWORK_NOT_EXIST(ErrorType.BAD_PARAMETERS),
+    ACTION_TYPE_FAILED_NETWORK_ALREADY_IN_VFS_CONFIG(ErrorType.CONFLICT),
     ACTION_TYPE_FAILED_STORAGE_DOMAIN_NOT_IN_STORAGE_POOL(ErrorType.CONFLICT),
     
ACTION_TYPE_FAILED_LUNS_ALREADY_PART_OF_STORAGE_DOMAINS(ErrorType.CONFLICT),
     ACTION_TYPE_FAILED_LUNS_ALREADY_USED_BY_DISKS(ErrorType.CONFLICT),
diff --git 
a/backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties 
b/backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties
index c8b9585..3445ef6 100644
--- 
a/backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties
+++ 
b/backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties
@@ -284,6 +284,7 @@
 VAR__TYPE__VNIC_PROFILE=$type VM network interface profile
 VAR__TYPE__LABEL=$type Label
 VAR__TYPE__HOST_NIC_VFS_CONFIG=$type host NIC VFs configuration
+VAR__TYPE__HOST_NIC_VFS_CONFIG_NETWORK=$type network to host NIC VFs 
configuration
 VAR__TYPE__PROVIDER=$type provider
 VAR__TYPE__PROVIDER_CERTIFICATE=$type provider certificate
 VAR__TYPE__VM=$type VM
@@ -534,6 +535,8 @@
 ACTION_TYPE_FAILED_NIC_IS_NOT_SRIOV_ENABLED=Cannot ${action} ${type}. The 
selected network interface ${nicName} is not SR-IOV enabled.
 ACTION_TYPE_FAILED_NUM_OF_VFS_NOT_IN_VALID_RANGE=Cannot ${action} ${type}. The 
specified number of VFs on network interface ${nicName} is ${numOfVfs}, the 
valid range is 0 - ${maxNumOfVfs}.
 ACTION_TYPE_FAILED_CANNOT_SET_SPECIFIC_NETWORKS=Cannot ${action} ${type}. All 
networks are allowed, cannot set specific network/label.
+ACTION_TYPE_FAILED_NETWORK_ALREADY_IN_VFS_CONFIG=Cannot ${action} ${type}. 
Network ${networkName} already exists on network interface ${nicName} VFs 
configuration.
+ACTION_TYPE_FAILED_NETWORK_NOT_EXIST=Cannot ${action} ${type}. Network with id 
${networkId} doesn't exist.
 
 ERROR_CANNOT_RECOVERY_STORAGE_POOL_THERE_IS_ACTIVE_DATA_DOMAINS=Cannot recover 
Data Center with active Data Storage Domain in Data Center.
 ERROR_CANNOT_DETACH_LAST_STORAGE_DOMAIN=Cannot remove the master Storage 
Domain from the Data Center without another active Storage Domain to take its 
place.\n\
diff --git 
a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java
 
b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java
index 42a7545..686e369 100644
--- 
a/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java
+++ 
b/frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/AppErrors.java
@@ -763,6 +763,9 @@
     @DefaultStringValue("VAR__TYPE__HOST_NIC_VFS_CONFIG=$type host NIC VFs 
configuration")
     String VAR__TYPE__HOST_NIC_VFS_CONFIG();
 
+    @DefaultStringValue("$type network to host NIC VFs configuration")
+    String VAR__TYPE__HOST_NIC_VFS_CONFIG_NETWORK();
+
     @DefaultStringValue("$type VM network interface profile")
     String VAR__TYPE__VNIC_PROFILE();
 
@@ -1489,6 +1492,15 @@
     @DefaultStringValue("Cannot ${action} ${type}. The specified number of VFs 
on network interface ${nicName} is ${numOfVfs}, the valid range is 0 - 
${maxNumOfVfs}.")
     String ACTION_TYPE_FAILED_NUM_OF_VFS_NOT_IN_VALID_RANGE();
 
+    @DefaultStringValue("Cannot ${action} ${type}. All networks are allowed, 
cannot set specific network/label.")
+    String ACTION_TYPE_FAILED_CANNOT_SET_SPECIFIC_NETWORKS();
+
+    @DefaultStringValue("Cannot ${action} ${type}. Network ${networkName} 
already exists on network interface ${nicName} VFs configuration.")
+    String ACTION_TYPE_FAILED_NETWORK_ALREADY_IN_VFS_CONFIG();
+
+    @DefaultStringValue("Cannot ${action} ${type}. Network with id 
${networkId} doesn't exist.")
+    String ACTION_TYPE_FAILED_NETWORK_NOT_EXIST();
+
     @DefaultStringValue("Cannot recover Data Center with active Data Storage 
Domain in Data Center.")
     String ERROR_CANNOT_RECOVERY_STORAGE_POOL_THERE_IS_ACTIVE_DATA_DOMAINS();
 
diff --git 
a/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
 
b/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
index ffffbe2..ceb3ff2 100644
--- 
a/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
+++ 
b/frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
@@ -280,6 +280,7 @@
 VAR__TYPE__NETWORKS=$type Networks
 VAR__TYPE__LABEL=$type Label
 VAR__TYPE__HOST_NIC_VFS_CONFIG=$type host NIC VFs configuration
+VAR__TYPE__HOST_NIC_VFS_CONFIG_NETWORK=$type network to host NIC VFs 
configuration
 VAR__TYPE__VNIC_PROFILE=$type VM network interface profile
 VAR__TYPE__PROVIDER=$type provider
 VAR__TYPE__PROVIDER_CERTIFICATE=$type provider certificate
@@ -538,6 +539,8 @@
 ACTION_TYPE_FAILED_NIC_IS_NOT_SRIOV_ENABLED=Cannot ${action} ${type}. The 
selected network interface ${nicName} is not SR-IOV enabled.
 ACTION_TYPE_FAILED_NUM_OF_VFS_NOT_IN_VALID_RANGE=Cannot ${action} ${type}. The 
specified number of VFs on network interface ${nicName} is ${numOfVfs}, the 
valid range is 0 - ${maxNumOfVfs}.
 ACTION_TYPE_FAILED_CANNOT_SET_SPECIFIC_NETWORKS=Cannot ${action} ${type}. All 
networks are allowed, cannot set specific network/label.
+ACTION_TYPE_FAILED_NETWORK_ALREADY_IN_VFS_CONFIG=Cannot ${action} ${type}. 
Network ${networkName} already exists on network interface ${nicName} VFs 
configuration.
+ACTION_TYPE_FAILED_NETWORK_NOT_EXIST=Cannot ${action} ${type}. Network with id 
${networkId} doesn't exist.
 
 ERROR_CANNOT_RECOVERY_STORAGE_POOL_THERE_IS_ACTIVE_DATA_DOMAINS=Cannot recover 
Data Center with active Data Storage Domain in Data Center.
 ERROR_CANNOT_DETACH_LAST_STORAGE_DOMAIN=Cannot remove the master Storage 
Domain from the Data Center without another active Storage Domain to take its 
place.\n\


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I1b1f7665b609b18dbe38242ca57ef24d3307c4b6
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Alona Kaplan <alkap...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to