Ori Liel has uploaded a new change for review. Change subject: restapi: move InstanceType remove from collection to entity ......................................................................
restapi: move InstanceType remove from collection to entity This patch moves the method that implements the DELETE operation from the collection interface to the entity interface. This is needed to avoid issues with newer versions of Resteasy. Change-Id: Iadcf27decc9f50942bf6b7567eacbc265954fd6d Signed-off-by: Ori Liel <ol...@redhat.com> --- M backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/InstanceTypeResource.java M backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/InstanceTypesResource.java M backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypeResource.java M backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypesResource.java M backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypeResourceTest.java 5 files changed, 36 insertions(+), 11 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/81/42081/1 diff --git a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/InstanceTypeResource.java b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/InstanceTypeResource.java index f783b70..423cebf 100644 --- a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/InstanceTypeResource.java +++ b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/InstanceTypeResource.java @@ -20,12 +20,17 @@ import org.ovirt.engine.api.model.NIC; import org.ovirt.engine.api.model.Nics; +import javax.ws.rs.DELETE; import javax.ws.rs.Path; import javax.ws.rs.Produces; +import javax.ws.rs.core.Response; @Produces({ApiMediaType.APPLICATION_XML, ApiMediaType.APPLICATION_JSON, ApiMediaType.APPLICATION_X_YAML}) public interface InstanceTypeResource extends UpdatableResource<InstanceType>, AsynchronouslyCreatedResource { + @DELETE + public Response remove(); + @Path("nics") public DevicesResource<NIC, Nics> getNicsResource(); diff --git a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/InstanceTypesResource.java b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/InstanceTypesResource.java index f94542e..0d6ab83 100644 --- a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/InstanceTypesResource.java +++ b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/InstanceTypesResource.java @@ -20,7 +20,6 @@ import org.ovirt.engine.api.model.InstanceTypes; import javax.ws.rs.Consumes; -import javax.ws.rs.DELETE; import javax.ws.rs.GET; import javax.ws.rs.POST; import javax.ws.rs.Path; @@ -38,10 +37,6 @@ @POST @Consumes({ApiMediaType.APPLICATION_XML, ApiMediaType.APPLICATION_JSON, ApiMediaType.APPLICATION_X_YAML}) public Response add(InstanceType template); - - @DELETE - @Path("{id}") - public Response remove(@PathParam("id") String id); @Path("{id}") public InstanceTypeResource getInstanceTypeSubResource(@PathParam("id") String id); diff --git a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypeResource.java b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypeResource.java index ef06f77..e91b503 100644 --- a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypeResource.java +++ b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypeResource.java @@ -2,6 +2,9 @@ import java.util.List; + +import javax.ws.rs.core.Response; + import org.ovirt.engine.api.model.Console; import org.ovirt.engine.api.model.InstanceType; import org.ovirt.engine.api.model.NIC; @@ -18,6 +21,7 @@ import org.ovirt.engine.core.common.action.UpdateVmTemplateParameters; import org.ovirt.engine.core.common.action.VdcActionParametersBase; import org.ovirt.engine.core.common.action.VdcActionType; +import org.ovirt.engine.core.common.action.VmTemplateParametersBase; import org.ovirt.engine.core.common.businessentities.VmRngDevice; import org.ovirt.engine.core.common.businessentities.VmTemplate; import org.ovirt.engine.core.common.queries.GetVmTemplateParameters; @@ -49,6 +53,12 @@ new QueryIdResolver<Guid>(VdcQueryType.GetVmTemplate, GetVmTemplateParameters.class), VdcActionType.UpdateVmTemplate, new UpdateParametersProvider()); + } + + @Override + public Response remove() { + get(); + return performAction(VdcActionType.RemoveVmTemplate, new VmTemplateParametersBase(asGuid(id))); } @Override @@ -121,4 +131,5 @@ return getMapper(modelType, UpdateVmTemplateParameters.class).map(incoming, updateParams); } } + } diff --git a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypesResource.java b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypesResource.java index afe7dfc..3167eab 100644 --- a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypesResource.java +++ b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypesResource.java @@ -11,7 +11,6 @@ import org.ovirt.engine.api.restapi.util.VmHelper; import org.ovirt.engine.core.common.action.AddVmTemplateParameters; import org.ovirt.engine.core.common.action.VdcActionType; -import org.ovirt.engine.core.common.action.VmTemplateParametersBase; import org.ovirt.engine.core.common.businessentities.VM; import org.ovirt.engine.core.common.businessentities.VmEntityType; import org.ovirt.engine.core.common.businessentities.VmRngDevice; @@ -90,11 +89,6 @@ @SingleEntityResource public InstanceTypeResource getInstanceTypeSubResource(String id) { return inject(new BackendInstanceTypeResource(id)); - } - - @Override - public Response performRemove(String id) { - return performAction(VdcActionType.RemoveVmTemplate, new VmTemplateParametersBase(asGuid(id))); } protected InstanceTypes mapCollection(List<org.ovirt.engine.core.common.businessentities.InstanceType> entities) { diff --git a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypeResourceTest.java b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypeResourceTest.java index 424d073..665b9da 100644 --- a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypeResourceTest.java +++ b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendInstanceTypeResourceTest.java @@ -1,6 +1,11 @@ package org.ovirt.engine.api.restapi.resource; +import javax.ws.rs.core.Response; + +import org.junit.Test; import org.ovirt.engine.api.model.InstanceType; +import org.ovirt.engine.core.common.action.VdcActionType; +import org.ovirt.engine.core.common.action.VmTemplateParametersBase; import org.ovirt.engine.core.common.businessentities.VmTemplate; import static org.ovirt.engine.api.restapi.resource.BackendInstanceTypesResourceTest.getModel; @@ -14,6 +19,21 @@ super(new BackendInstanceTypeResource(GUIDS[0].toString())); } + @Test + public void testRemove() throws Exception { + setUpGetGraphicsExpectations(1); + setUpGetEntityExpectations(1); + setUriInfo(setUpActionExpectations( + VdcActionType.RemoveVmTemplate, + VmTemplateParametersBase.class, + new String[] { "VmTemplateId" }, + new Object[] { GUIDS[0] }, + true, + true)); + Response response = resource.remove(); + verifyRemove(response); + } + @Override protected org.ovirt.engine.core.common.businessentities.InstanceType getEntity(int index) { return setUpEntityExpectations(control.createMock(VmTemplate.class), index); -- To view, visit https://gerrit.ovirt.org/42081 To unsubscribe, visit https://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Iadcf27decc9f50942bf6b7567eacbc265954fd6d Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Ori Liel <ol...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches