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