Muli Salem has uploaded a new change for review.

Change subject: core: Interface Name Custom Value (#861867)
......................................................................

core: Interface Name Custom Value (#861867)

This patch changes RemoveVmTemplateInterfaceParameters not
to send a VmNetworkInterface object, but rather only
the interface Id. It also fetches the Interface Name from
the Db, instead of from the params.

Change-Id: I985261c9517efa52673145ffb8d29bd537c08ed9
Bug-Url: https://bugzilla.redhat.com/861867
Signed-off-by: Muli Salem <[email protected]>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmInterfaceCommand.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmTemplateInterfaceCommand.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/RemoveVmTemplateInterfaceParameters.java
3 files changed, 15 insertions(+), 27 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/34/8334/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmInterfaceCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmInterfaceCommand.java
index 62f3c2e..49f2e4d 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmInterfaceCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmInterfaceCommand.java
@@ -1,7 +1,5 @@
 package org.ovirt.engine.core.bll;
 
-import java.util.List;
-
 import org.ovirt.engine.core.common.AuditLogType;
 import org.ovirt.engine.core.common.action.RemoveVmInterfaceParameters;
 import org.ovirt.engine.core.common.businessentities.VMStatus;
@@ -13,8 +11,6 @@
 import org.ovirt.engine.core.dal.dbbroker.DbFacade;
 import org.ovirt.engine.core.dal.dbbroker.auditloghandling.CustomLogField;
 import org.ovirt.engine.core.dal.dbbroker.auditloghandling.CustomLogFields;
-import org.ovirt.engine.core.utils.linq.LinqUtils;
-import org.ovirt.engine.core.utils.linq.Predicate;
 
 @CustomLogFields({ @CustomLogField("InterfaceName") })
 public class RemoveVmInterfaceCommand<T extends RemoveVmInterfaceParameters> 
extends VmCommand<T> {
@@ -32,24 +28,17 @@
 
     @Override
     protected void executeVmCommand() {
-        
this.setVmName(DbFacade.getInstance().getVmStaticDao().get(getParameters().getVmId()).getvm_name());
+        
this.setVmName(getVmStaticDAO().get(getParameters().getVmId()).getvm_name());
 
         // return mac to pool
-        List<VmNetworkInterface> interfaces = 
DbFacade.getInstance().getVmNetworkInterfaceDao()
-                .getAllForVm(getParameters().getVmId());
+        VmNetworkInterface iface = 
getVmNetworkInterfaceDAO().get(getParameters().getInterfaceId());
 
-        VmNetworkInterface iface = LinqUtils.firstOrNull(interfaces, new 
Predicate<VmNetworkInterface>() {
-            @Override
-            public boolean eval(VmNetworkInterface i) {
-                return i.getId().equals(getParameters().getInterfaceId());
-            }
-        });
         if (iface != null) {
             MacPoolManager.getInstance().freeMac(iface.getMacAddress());
             _interfaceName = iface.getName();
 
             // Get Interface type.
-            String interType = 
VmInterfaceType.forValue(iface.getType()).getInterfaceTranslation().toString();
+            String interType = 
VmInterfaceType.forValue(iface.getType()).getInterfaceTranslation();
             if (interType != null) {
                 AddCustomValue("InterfaceType", interType);
             }
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmTemplateInterfaceCommand.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmTemplateInterfaceCommand.java
index e57f5f1..9f4e8e1 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmTemplateInterfaceCommand.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/RemoveVmTemplateInterfaceCommand.java
@@ -4,6 +4,7 @@
 import org.ovirt.engine.core.common.action.RemoveVmTemplateInterfaceParameters;
 import org.ovirt.engine.core.common.businessentities.VmDeviceId;
 import org.ovirt.engine.core.common.businessentities.VmInterfaceType;
+import org.ovirt.engine.core.common.businessentities.VmNetworkInterface;
 import org.ovirt.engine.core.dal.dbbroker.DbFacade;
 
 public class RemoveVmTemplateInterfaceCommand<T extends 
RemoveVmTemplateInterfaceParameters> extends VmTemplateCommand<T> {
@@ -14,11 +15,14 @@
 
     @Override
     protected void executeCommand() {
-        AddCustomValue("InterfaceName", 
((getParameters().getInterface().getName())));
-        AddCustomValue("InterfaceType", 
(VmInterfaceType.forValue(getParameters().getInterface().getType()).getInterfaceTranslation()).toString());
+        VmNetworkInterface iface = 
getVmNetworkInterfaceDAO().get(getParameters().getInterfaceId());
+        if (iface != null) {
+            AddCustomValue("InterfaceName", iface.getName());
+            AddCustomValue("InterfaceType", 
VmInterfaceType.forValue(iface.getType()).getInterfaceTranslation());
+        }
         DbFacade.getInstance().getVmDeviceDao().remove(
-                new VmDeviceId(getParameters().getInterface().getId(), 
getParameters().getVmTemplateId()));
-        
DbFacade.getInstance().getVmNetworkInterfaceDao().remove(getParameters().getInterface().getId());
+                new VmDeviceId(getParameters().getInterfaceId(), 
getParameters().getVmTemplateId()));
+        getVmNetworkInterfaceDAO().remove(getParameters().getInterfaceId());
         setSucceeded(true);
     }
 
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/RemoveVmTemplateInterfaceParameters.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/RemoveVmTemplateInterfaceParameters.java
index 0e634f6..9464262 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/RemoveVmTemplateInterfaceParameters.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/RemoveVmTemplateInterfaceParameters.java
@@ -1,18 +1,14 @@
 package org.ovirt.engine.core.common.action;
 
-import javax.validation.Valid;
-
-import org.ovirt.engine.core.common.businessentities.VmNetworkInterface;
 import org.ovirt.engine.core.compat.Guid;
 
 public class RemoveVmTemplateInterfaceParameters extends 
VmTemplateParametersBase {
 
     private static final long serialVersionUID = 3492037768582415400L;
-    @Valid
-    private VmNetworkInterface _interface;
+    private Guid interfaceId;
 
-    public VmNetworkInterface getInterface() {
-        return _interface;
+    public Guid getInterfaceId() {
+        return interfaceId;
     }
 
     public RemoveVmTemplateInterfaceParameters() {
@@ -21,7 +17,6 @@
 
     public RemoveVmTemplateInterfaceParameters(Guid vmtId, Guid ifaceId) {
         super(vmtId);
-        _interface = new VmNetworkInterface();
-        _interface.setId(ifaceId);
+        interfaceId = ifaceId;
     }
 }


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

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

Reply via email to