Martin Mucha has uploaded a new change for review.

Change subject: restapi: refactored out updateActionTypeForQosType method
......................................................................

restapi: refactored out updateActionTypeForQosType method

• this code does not belong into update method (also making it
overgrown)

• not initializating 'updateActionType' variable causes NPE much later
in process without sensible explanation.

Change-Id: Ic16d1488a932b49a4fedea3247c2e00cf06f6c5c
Signed-off-by: Martin Mucha <mmu...@redhat.com>
---
M 
backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendQosResource.java
1 file changed, 14 insertions(+), 16 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/68/41468/1

diff --git 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendQosResource.java
 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendQosResource.java
index 994fe80..3db8f4a 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendQosResource.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendQosResource.java
@@ -36,24 +36,9 @@
                 new QueryIdResolver<Guid>(VdcQueryType.GetQosById, 
IdQueryParameters.class);
         final QosBase qosBase =
                 getEntity(new QueryIdResolver<Guid>(VdcQueryType.GetQosById, 
IdQueryParameters.class), true);
-        VdcActionType updateActionType = null;
-
-        switch (qosBase.getQosType()) {
-        case STORAGE:
-            updateActionType = VdcActionType.UpdateStorageQos;
-            break;
-        case CPU:
-            updateActionType = VdcActionType.UpdateCpuQos;
-            break;
-        case NETWORK:
-            updateActionType = VdcActionType.UpdateNetworkQoS;
-            break;
-        default:
-            break;
-        }
         return performUpdate(incoming,
                 entityResolver,
-                updateActionType,
+                updateActionTypeForQosType(qosBase),
                 new ParametersProvider<QoS, QosBase>() {
                     @Override
                     public VdcActionParametersBase getParameters(QoS model,
@@ -66,6 +51,19 @@
                 });
     }
 
+    private VdcActionType updateActionTypeForQosType(QosBase qosBase) {
+        switch (qosBase.getQosType()) {
+        case STORAGE:
+            return VdcActionType.UpdateStorageQos;
+        case CPU:
+            return VdcActionType.UpdateCpuQos;
+        case NETWORK:
+            return VdcActionType.UpdateNetworkQoS;
+        default:
+            throw new IllegalArgumentException("Unsupported QoS type");
+        }
+    }
+
     protected class UpdateParametersProvider implements 
ParametersProvider<QoS, QosBase> {
         @Override
         public VdcActionParametersBase getParameters(QoS incoming,


-- 
To view, visit https://gerrit.ovirt.org/41468
To unsubscribe, visit https://gerrit.ovirt.org/settings

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

Reply via email to