Martin Mucha has uploaded a new change for review.

Change subject: core: MacPool related Commands
......................................................................

core: MacPool related Commands

commands for adding/modifying/removing MacPools.

Change-Id: I9c0c3657e3e53699bcafa375befdce848b01a2f3
Bug-Url: https://bugzilla.redhat.com/1078844
Signed-off-by: Martin Mucha <[email protected]>
---
A 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddMacPoolCommand.java
A 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveMacPoolCommand.java
A 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateMacPoolCommand.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/VdcObjectType.java
A 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/MacPoolParameter.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionType.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/ActionGroup.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/errors/VdcBllMessages.java
M 
backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/auditloghandling/AuditLogableBase.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/userportal-gwtp/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
M 
frontend/webadmin/modules/webadmin/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
13 files changed, 331 insertions(+), 3 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/05/28705/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddMacPoolCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddMacPoolCommand.java
new file mode 100644
index 0000000..d3cf927
--- /dev/null
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/AddMacPoolCommand.java
@@ -0,0 +1,81 @@
+package org.ovirt.engine.core.bll;
+
+import java.util.Collections;
+import java.util.List;
+
+import org.apache.commons.lang.StringUtils;
+import org.ovirt.engine.core.bll.network.macpoolmanager.MacPoolPerDC;
+import org.ovirt.engine.core.bll.utils.PermissionSubject;
+import org.ovirt.engine.core.common.VdcObjectType;
+import org.ovirt.engine.core.common.action.MacPoolParameter;
+import org.ovirt.engine.core.common.businessentities.MacPool;
+import org.ovirt.engine.core.common.errors.VdcBllMessages;
+import org.ovirt.engine.core.dao.MacPoolDAO;
+
+public class AddMacPoolCommand extends CommandBase<MacPoolParameter> {
+
+    private MacPoolDAO macPoolDao;
+
+    public AddMacPoolCommand(MacPoolParameter parameters) {
+        super(parameters);
+    }
+
+    @Override
+    public List<PermissionSubject> getPermissionCheckSubjects() {
+        return Collections.singletonList(new 
PermissionSubject(MultiLevelAdministrationHandler.SYSTEM_OBJECT_ID,
+                VdcObjectType.System,       //TODO MM: fix?
+                getActionType().getActionGroup()));
+    }
+
+    @Override
+    protected boolean canDoAction() {
+        final boolean wrongInput = getParameters() == null ||
+                getParameters().getMacPool() == null;
+
+        if (!super.canDoAction() || wrongInput) {
+            return false;
+        }
+
+        final MacPool macPool = getMacPool();
+
+        if (macPool.isDefaultPool()) {
+            
addCanDoActionMessage(VdcBllMessages.MAC_POOL_CANNOT_SET_DEFAULT_POOL_THIS_WAY);
+            return false;
+        }
+
+        if (StringUtils.isEmpty(macPool.getName()) && macPool.isShared()) {
+            
addCanDoActionMessage(VdcBllMessages.MAC_POOL_SHARED_POOL_MUST_HAVE_NAME);
+            return false;
+        }
+
+        if (macPool.getRanges() == null || macPool.getRanges().isEmpty()) {
+            addCanDoActionMessage(VdcBllMessages.MAC_POOL_MUST_HAVE_RANGE);
+            return false;
+        }
+
+        return true;
+    }
+
+    private MacPool getMacPool() {
+        return getParameters().getMacPool();
+    }
+
+    @Override
+    protected void executeCommand() {
+        this.macPoolDao = getDbFacade().getMacPoolDao();
+        MacPool macPool = getMacPool();
+
+        macPoolDao.save(macPool);
+
+        MacPoolPerDC.getInstance().createPool(macPool);
+        setSucceeded(true);
+        getReturnValue().setActionReturnValue(macPool.getId());
+    }
+
+    @Override
+    public void rollback() {
+        super.rollback();
+        MacPoolPerDC.getInstance().removePool(getMacPool().getId());
+    }
+
+}
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveMacPoolCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveMacPoolCommand.java
new file mode 100644
index 0000000..4781c87
--- /dev/null
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveMacPoolCommand.java
@@ -0,0 +1,78 @@
+package org.ovirt.engine.core.bll;
+
+import java.util.Collections;
+import java.util.List;
+
+import org.ovirt.engine.core.bll.network.macpoolmanager.MacPoolPerDC;
+import org.ovirt.engine.core.bll.utils.PermissionSubject;
+import org.ovirt.engine.core.common.VdcObjectType;
+import org.ovirt.engine.core.common.action.IdParameters;
+import org.ovirt.engine.core.common.businessentities.MacPool;
+import org.ovirt.engine.core.common.errors.VdcBllMessages;
+import org.ovirt.engine.core.compat.Guid;
+import org.ovirt.engine.core.dao.MacPoolDAO;
+import org.ovirt.engine.core.utils.transaction.RollbackHandler;
+
+public class RemoveMacPoolCommand extends 
org.ovirt.engine.core.bll.CommandBase<IdParameters> implements RollbackHandler {
+
+    private MacPoolDAO macPoolDao;
+    private MacPool deletedMacPool;
+
+    public RemoveMacPoolCommand(IdParameters parameters) {
+        super(parameters);
+        macPoolDao = getDbFacade().getMacPoolDao();
+    }
+
+    @Override
+    protected void executeCommand() {
+        final Guid macPoolId = getParameters().getId();
+
+        deletedMacPool = macPoolDao.get(getParameters().getId());
+        macPoolDao.remove(macPoolId);
+        MacPoolPerDC.getInstance().removePool(macPoolId);
+
+        getReturnValue().setSucceeded(true);
+    }
+
+    @Override
+    protected boolean canDoAction() {
+        final boolean wrongInput = getParameters() == null ||
+                getParameters().getId() == null ||
+                getParameters().getId().equals(Guid.Empty);
+
+        if (!super.canDoAction() || wrongInput) {
+            return false;
+        }
+
+        final MacPoolDAO macPoolDao = getDbFacade().getMacPoolDao();
+        final Guid macPoolId = getParameters().getId();
+        final MacPool macPool = macPoolDao.get(macPoolId);
+        final int dcUsageCount = macPoolDao.getDCUsageCount(macPoolId);
+
+        if (macPool == null) {
+            addCanDoActionMessage(VdcBllMessages.MAC_POOL_DOES_NOT_EXIST);
+            return false;
+        }
+
+        final boolean canBeRemoved = macPool.canBeRemoved() && dcUsageCount == 
0;
+        if (!canBeRemoved) {
+            addCanDoActionMessage(VdcBllMessages.MAC_POOL_CANNOT_BE_REMOVED);
+            return false;
+        } else {
+            return true;
+        }
+    }
+
+    @Override
+    public List<PermissionSubject> getPermissionCheckSubjects() {
+        return Collections.singletonList(new 
PermissionSubject(MultiLevelAdministrationHandler.SYSTEM_OBJECT_ID,
+                VdcObjectType.System/*VdcObjectType.MacPool*/, 
getActionType().getActionGroup()));  //TODO MM: fix?
+    }
+
+
+    @Override
+    public void rollback() {
+        super.rollback();
+        MacPoolPerDC.getInstance().createPool(deletedMacPool);
+    }
+}
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateMacPoolCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateMacPoolCommand.java
new file mode 100644
index 0000000..1f249d6
--- /dev/null
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/UpdateMacPoolCommand.java
@@ -0,0 +1,89 @@
+package org.ovirt.engine.core.bll;
+
+import java.util.Collections;
+import java.util.List;
+
+import org.apache.commons.lang.StringUtils;
+import org.ovirt.engine.core.bll.network.macpoolmanager.MacPoolPerDC;
+import org.ovirt.engine.core.bll.utils.PermissionSubject;
+import org.ovirt.engine.core.common.VdcObjectType;
+import org.ovirt.engine.core.common.action.MacPoolParameter;
+import org.ovirt.engine.core.common.businessentities.MacPool;
+import org.ovirt.engine.core.common.errors.VdcBllMessages;
+import org.ovirt.engine.core.compat.Guid;
+import org.ovirt.engine.core.dao.MacPoolDAO;
+
+public class UpdateMacPoolCommand extends CommandBase<MacPoolParameter> {
+
+    private final MacPoolDAO macPoolDao;
+    private MacPool oldMacPool;
+
+    public UpdateMacPoolCommand(MacPoolParameter parameters) {
+        super(parameters);
+        macPoolDao = getDbFacade().getMacPoolDao();
+    }
+
+    @Override
+    protected boolean canDoAction() {
+        final boolean wrongInput = getParameters() == null ||
+                getMacPool() == null ||
+                getMacPoolId() == null;
+
+        if (!super.canDoAction() || wrongInput) {
+            return false;
+        }
+
+        final MacPool macPool = getParameters().getMacPool();
+        if (StringUtils.isEmpty(macPool.getName()) && macPool.isShared()) {
+            
addCanDoActionMessage(VdcBllMessages.MAC_POOL_SHARED_POOL_MUST_HAVE_NAME);
+            return false;
+        }
+
+        if (macPool.getRanges() == null || macPool.getRanges().isEmpty()) {
+            addCanDoActionMessage(VdcBllMessages.MAC_POOL_MUST_HAVE_RANGE);
+            return false;
+        }
+
+        oldMacPool = macPoolDao.get(getMacPoolId());
+        if (oldMacPool == null) {
+            addCanDoActionMessage(VdcBllMessages.MAC_POOL_DOES_NOT_EXIST);
+            return false;
+        }
+
+        if (oldMacPool.isShared() != macPool.isShared() && 
getMacPoolDAO().getDCUsageCount(getMacPoolId()) != 0) {
+            
addCanDoActionMessage(VdcBllMessages.MAC_POOL_TRYING_TO_REUSE_NON_SHARED_POOL);
+            return false;
+        }
+
+        return true;
+    }
+
+    private MacPool getMacPool() {
+        return getParameters().getMacPool();
+    }
+
+    private Guid getMacPoolId() {
+        return getMacPool().getId();
+    }
+
+    @Override
+    protected void executeCommand() {
+        macPoolDao.update(getMacPool());
+        MacPoolPerDC.getInstance().modifyPool(getMacPool());
+
+        setSucceeded(true);
+        getReturnValue().setActionReturnValue(getMacPoolId());
+    }
+
+    @Override
+    public List<PermissionSubject> getPermissionCheckSubjects() {
+        return Collections.singletonList(new 
PermissionSubject(MultiLevelAdministrationHandler.SYSTEM_OBJECT_ID,
+                VdcObjectType.System/*VdcObjectType.MacPool*/, 
getActionType().getActionGroup()));  //TODO MM: fix?
+    }
+
+    @Override
+    public void rollback() {
+        super.rollback();
+        MacPoolPerDC.getInstance().modifyPool(oldMacPool);
+    }
+}
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/VdcObjectType.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/VdcObjectType.java
index 25f009f..4f593d0 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/VdcObjectType.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/VdcObjectType.java
@@ -34,7 +34,8 @@
     PROVIDER(24, "Provider"),
     GlusterService(25, "GlusterService"),
     ExternalTask(26, "ExternalTask"),
-    VnicProfile(27, "Vnic Profile");
+    VnicProfile(27, "Vnic Profile"),
+    MacPool(28, "MacPool");
 
     private int value;
     private String vdcObjectTranslationVal;
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/MacPoolParameter.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/MacPoolParameter.java
new file mode 100644
index 0000000..8a369d9
--- /dev/null
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/MacPoolParameter.java
@@ -0,0 +1,23 @@
+package org.ovirt.engine.core.common.action;
+
+import org.ovirt.engine.core.common.businessentities.MacPool;
+
+public class MacPoolParameter extends VdcActionParametersBase{
+
+    private MacPool macPool;
+
+    public MacPoolParameter() {
+    }
+
+    public MacPoolParameter(MacPool macPool) {
+        this.macPool = macPool;
+    }
+
+    public MacPool getMacPool() {
+        return macPool;
+    }
+
+    public void setMacPool(MacPool macPool) {
+        this.macPool = macPool;
+    }
+}
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionType.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionType.java
index 0906e30..f6c082f 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionType.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/VdcActionType.java
@@ -362,7 +362,12 @@
     RemoveAuditLogById(2100, false, QuotaDependency.NONE),
     ClearAllDismissedAuditLogs(2101, false, QuotaDependency.NONE),
 
-    SetDataOnSession(3000, false, QuotaDependency.NONE);
+    SetDataOnSession(3000, false, QuotaDependency.NONE),
+
+    // Mac Pool
+    AddMacPool(2200, ActionGroup.CREATE_MAC_POOL, false, QuotaDependency.NONE),
+    UpdateMacPool(2201, ActionGroup.EDIT_MAC_POOL, false, 
QuotaDependency.NONE),
+    RemoveMacPool(2202, ActionGroup.DELETE_MAC_POOL, false, 
QuotaDependency.NONE);
 
     private int intValue;
     private ActionGroup actionGroup;
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/ActionGroup.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/ActionGroup.java
index 5aeec1e..619a8a9 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/ActionGroup.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/ActionGroup.java
@@ -132,7 +132,12 @@
     AUDIT_LOG_MANAGEMENT(1304, RoleType.ADMIN, false),
 
     // affinity group CRUD commands
-    MANIPULATE_AFFINITY_GROUPS(1550, RoleType.ADMIN, true, 
ApplicationMode.VirtOnly);
+    MANIPULATE_AFFINITY_GROUPS(1550, RoleType.ADMIN, true, 
ApplicationMode.VirtOnly),
+
+    // MAC pool actions groups
+    CREATE_MAC_POOL(1660, RoleType.ADMIN, true, ApplicationMode.VirtOnly),
+    EDIT_MAC_POOL(1661, RoleType.ADMIN, true, ApplicationMode.VirtOnly),
+    DELETE_MAC_POOL(1662, RoleType.ADMIN, true, ApplicationMode.VirtOnly);
 
     private int id;
     private RoleType roleType;
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 6b9a0f8..54f9496 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
@@ -362,6 +362,12 @@
     VM_CANNOT_UPDATE_ILLEGAL_FIELD(ErrorType.BAD_PARAMETERS),
     VM_CANNOT_UPDATE_DEVICE_VM_NOT_DOWN(ErrorType.BAD_PARAMETERS),
     MAC_POOL_NOT_ENOUGH_MAC_ADDRESSES(ErrorType.CONFLICT),
+    MAC_POOL_CANNOT_BE_REMOVED(ErrorType.CONFLICT),
+    MAC_POOL_DOES_NOT_EXIST(ErrorType.BAD_PARAMETERS),
+    MAC_POOL_SHARED_POOL_MUST_HAVE_NAME(ErrorType.BAD_PARAMETERS),
+    MAC_POOL_CANNOT_SET_DEFAULT_POOL_THIS_WAY(ErrorType.BAD_PARAMETERS),
+    MAC_POOL_MUST_HAVE_RANGE(ErrorType.BAD_PARAMETERS),
+    MAC_POOL_TRYING_TO_REUSE_NON_SHARED_POOL(ErrorType.BAD_PARAMETERS),
     VM_CANNOT_MOVE_TO_CLUSTER_IN_OTHER_STORAGE_POOL(ErrorType.CONFLICT),
     VM_CLUSTER_IS_NOT_VALID(ErrorType.BAD_PARAMETERS),
     VM_CANNOT_REMOVE_VM_WHEN_STATUS_IS_NOT_DOWN(ErrorType.CONFLICT),
diff --git 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/auditloghandling/AuditLogableBase.java
 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/auditloghandling/AuditLogableBase.java
index ad22917..0b1be38 100644
--- 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/auditloghandling/AuditLogableBase.java
+++ 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dal/dbbroker/auditloghandling/AuditLogableBase.java
@@ -26,6 +26,7 @@
 import org.ovirt.engine.core.dao.AuditLogDAO;
 import org.ovirt.engine.core.dao.DbGroupDAO;
 import org.ovirt.engine.core.dao.DbUserDAO;
+import org.ovirt.engine.core.dao.MacPoolDAO;
 import org.ovirt.engine.core.dao.PermissionDAO;
 import org.ovirt.engine.core.dao.RoleDAO;
 import org.ovirt.engine.core.dao.RoleGroupMapDAO;
@@ -570,6 +571,10 @@
         return getDbFacade().getStoragePoolDao();
     }
 
+    public MacPoolDAO getMacPoolDAO() {
+        return getDbFacade().getMacPoolDao();
+    }
+
     public StorageDomainStaticDAO getStorageDomainStaticDAO() {
         return getDbFacade().getStorageDomainStaticDao();
     }
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 1be9581..d59381c 100644
--- 
a/backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties
+++ 
b/backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties
@@ -9,6 +9,11 @@
 IRS_PROTOCOL_ERROR=Storage Manager protocol error.
 IRS_RESPONSE_ERROR=Storage Manager response error.
 MAC_POOL_NOT_ENOUGH_MAC_ADDRESSES=Not enough MAC addresses left in MAC Address 
Pool.
+MAC_POOL_CANNOT_BE_REMOVED=Mac pool cannot be removed. Either it's used or 
it's default mac pool.
+MAC_POOL_DOES_NOT_EXIST=Mac pool does not exist.
+MAC_POOL_SHARED_POOL_MUST_HAVE_NAME=Mac pool cannot be created. Shared MAC 
pools must have names.
+MAC_POOL_MUST_HAVE_RANGE=MacPool must contain at least one mac range.
+MAC_POOL_TRYING_TO_REUSE_NON_SHARED_POOL=Trying to use non shared pool which 
is used by someone else
 VMT_CANNOT_REMOVE_DETECTED_DERIVED_VM=Cannot delete Template. Template is 
being used by the following VMs: ${vmsList}.
 VMT_CANNOT_REMOVE_BASE_WITH_VERSIONS=Cannot delete Base Template that has 
Template Versions, please first remove all Template Versions for this Template: 
${versionsList}.
 ACTION_TYPE_FAILED_DETECTED_DERIVED_DISKS=Cannot ${action} ${type}. The 
following Disk(s) are based on it: \n ${disksInfo}.
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 c62c318..6b29a51 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
@@ -37,6 +37,24 @@
     @DefaultStringValue("Not enough MAC addresses left in MAC Address Pool.")
     String MAC_POOL_NOT_ENOUGH_MAC_ADDRESSES();
 
+    @DefaultStringValue("Mac pool cannot be removed. Either it's used or it's 
default mac pool.")
+    String MAC_POOL_CANNOT_BE_REMOVED();
+
+    @DefaultStringValue("Mac pool does not exist.")
+    String MAC_POOL_DOES_NOT_EXIST();
+
+    @DefaultStringValue("Mac pool cannot be created. Shared MAC pools must 
have names.")
+    String MAC_POOL_SHARED_POOL_MUST_HAVE_NAME();
+
+    @DefaultStringValue("Do not specify default MAC pool on pool 
create/update. Use specific command to select default MAC pool.")
+    String MAC_POOL_CANNOT_SET_DEFAULT_POOL_THIS_WAY();
+
+    @DefaultStringValue("MacPool must contain at least one mac range")
+    String MAC_POOL_MUST_HAVE_RANGE();
+
+    @DefaultStringValue("Trying to use non shared pool which is used by 
someone else")
+    String MAC_POOL_TRYING_TO_REUSE_NON_SHARED_POOL();
+
     @DefaultStringValue("Cannot delete Template. Template is being used by the 
following VMs: ${vmsList}.")
     String VMT_CANNOT_REMOVE_DETECTED_DERIVED_VM();
 
diff --git 
a/frontend/webadmin/modules/userportal-gwtp/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
 
b/frontend/webadmin/modules/userportal-gwtp/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
index 8cbbf12..0b709f6 100644
--- 
a/frontend/webadmin/modules/userportal-gwtp/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
+++ 
b/frontend/webadmin/modules/userportal-gwtp/src/main/resources/org/ovirt/engine/ui/frontend/AppErrors.properties
@@ -9,6 +9,12 @@
 IRS_PROTOCOL_ERROR=Storage Manager protocol error.
 IRS_RESPONSE_ERROR=Storage Manager response error.
 MAC_POOL_NOT_ENOUGH_MAC_ADDRESSES=Not enough MAC addresses left in MAC Address 
Pool.
+MAC_POOL_CANNOT_BE_REMOVED=Mac pool cannot be removed. Either it's used or 
it's default mac pool.
+MAC_POOL_DOES_NOT_EXIST=Mac pool does not exist.
+MAC_POOL_SHARED_POOL_MUST_HAVE_NAME=Mac pool cannot be created. Shared MAC 
pools must have names.
+MAC_POOL_CANNOT_SET_DEFAULT_POOL_THIS_WAY=Do not specify default MAC pool on 
pool create/update. Use specific command to select default MAC pool.
+MAC_POOL_MUST_HAVE_RANGE=MacPool must contain at least one mac range.
+MAC_POOL_TRYING_TO_REUSE_NON_SHARED_POOL=Trying to use non shared pool which 
is used by someone else
 VMT_CANNOT_REMOVE_DETECTED_DERIVED_VM=Cannot delete Template. Template is 
being used by the following VMs: ${vmsList}.
 VMT_CANNOT_REMOVE_BASE_WITH_VERSIONS=Cannot delete Base Template that has 
Template Versions, please first remove all Template Versions for this Template: 
${versionsList}.
 ACTION_TYPE_FAILED_DETECTED_DERIVED_DISKS=Cannot ${action} ${type}. The 
following Disk(s) are based on it: \n ${disksInfo}.
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 a4966f0..2f7eedc 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
@@ -9,6 +9,12 @@
 IRS_PROTOCOL_ERROR=Storage Manager protocol error.
 IRS_RESPONSE_ERROR=Storage Manager response error.
 MAC_POOL_NOT_ENOUGH_MAC_ADDRESSES=Not enough MAC addresses left in MAC Address 
Pool.
+MAC_POOL_CANNOT_BE_REMOVED=Mac pool cannot be removed. Either it's used or 
it's default mac pool.
+MAC_POOL_DOES_NOT_EXIST=Mac pool does not exist.
+MAC_POOL_SHARED_POOL_MUST_HAVE_NAME=Mac pool cannot be created. Shared MAC 
pools must have names.
+MAC_POOL_CANNOT_SET_DEFAULT_POOL_THIS_WAY=Do not specify default MAC pool on 
pool create/update. Use specific command to select default MAC pool.
+MAC_POOL_MUST_HAVE_RANGE=MacPool must contain at least one mac range.
+MAC_POOL_TRYING_TO_REUSE_NON_SHARED_POOL=Trying to use non shared pool which 
is used by someone else
 VMT_CANNOT_REMOVE_DETECTED_DERIVED_VM=Cannot delete Template. Template is 
being used by the following VMs: ${vmsList}.
 VMT_CANNOT_REMOVE_BASE_WITH_VERSIONS=Cannot delete Base Template that has 
Template Versions, please first remove all Template Versions for this Template: 
${versionsList}.
 ACTION_TYPE_FAILED_DETECTED_DERIVED_DISKS=Cannot ${action} ${type}. The 
following Disk(s) are based on it: \n ${disksInfo}.


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I9c0c3657e3e53699bcafa375befdce848b01a2f3
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Martin Mucha <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to