Ori Liel has uploaded a new change for review. Change subject: restapi: Move DiskSnapshot Remove to entity ......................................................................
restapi: Move DiskSnapshot Remove 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: I63d10b373ae833fe300b855768512bcb3056455c Signed-off-by: Ori Liel <[email protected]> --- M backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/DiskSnapshotResource.java M backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/DiskSnapshotsResource.java M backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainDiskSnapshotResource.java M backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainDiskSnapshotsResource.java M backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainDiskSnapshotResourceTest.java 5 files changed, 39 insertions(+), 14 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/76/42076/1 diff --git a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/DiskSnapshotResource.java b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/DiskSnapshotResource.java index 87bec06..bec9bb1 100644 --- a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/DiskSnapshotResource.java +++ b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/DiskSnapshotResource.java @@ -17,8 +17,10 @@ import org.ovirt.engine.api.model.DiskSnapshot; +import javax.ws.rs.DELETE; import javax.ws.rs.GET; import javax.ws.rs.Produces; +import javax.ws.rs.core.Response; @Produces({ApiMediaType.APPLICATION_XML, ApiMediaType.APPLICATION_JSON, ApiMediaType.APPLICATION_X_YAML}) public interface DiskSnapshotResource { @@ -26,4 +28,6 @@ @GET public DiskSnapshot get(); + @DELETE + public Response remove(); } diff --git a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/DiskSnapshotsResource.java b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/DiskSnapshotsResource.java index 7ca9f5b..56560013 100644 --- a/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/DiskSnapshotsResource.java +++ b/backend/manager/modules/restapi/interface/definition/src/main/java/org/ovirt/engine/api/resource/DiskSnapshotsResource.java @@ -1,11 +1,9 @@ package org.ovirt.engine.api.resource; -import javax.ws.rs.DELETE; import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.Produces; -import javax.ws.rs.core.Response; import org.ovirt.engine.api.model.DiskSnapshots; @@ -18,9 +16,5 @@ @Path("{id}") public DiskSnapshotResource getDeviceSubResource(@PathParam("id") String id); - - @DELETE - @Path("{id}") - public Response remove(@PathParam("id") String id); } diff --git a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainDiskSnapshotResource.java b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainDiskSnapshotResource.java index 71f37a2..4db5fd0 100644 --- a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainDiskSnapshotResource.java +++ b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainDiskSnapshotResource.java @@ -1,11 +1,16 @@ package org.ovirt.engine.api.restapi.resource; +import javax.ws.rs.core.Response; + import org.ovirt.engine.api.model.DiskSnapshot; import org.ovirt.engine.api.model.StorageDomain; import org.ovirt.engine.api.resource.DiskSnapshotResource; +import org.ovirt.engine.core.common.action.RemoveDiskSnapshotsParameters; +import org.ovirt.engine.core.common.action.VdcActionType; import org.ovirt.engine.core.common.businessentities.storage.Disk; import org.ovirt.engine.core.common.queries.IdQueryParameters; import org.ovirt.engine.core.common.queries.VdcQueryType; +import org.ovirt.engine.core.compat.Guid; public class BackendStorageDomainDiskSnapshotResource extends AbstractBackendActionableResource<DiskSnapshot, Disk> @@ -38,4 +43,11 @@ return diskSnapshot; } + @Override + public Response remove() { + get(); + return performAction(VdcActionType.RemoveDiskSnapshots, + new RemoveDiskSnapshotsParameters(Guid.createGuidFromString(id))); + } + } diff --git a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainDiskSnapshotsResource.java b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainDiskSnapshotsResource.java index cd4fd8c..aa70b44 100644 --- a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainDiskSnapshotsResource.java +++ b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainDiskSnapshotsResource.java @@ -1,14 +1,11 @@ package org.ovirt.engine.api.restapi.resource; -import javax.ws.rs.core.Response; import org.ovirt.engine.api.model.DiskSnapshot; import org.ovirt.engine.api.model.DiskSnapshots; import org.ovirt.engine.api.model.StorageDomain; import org.ovirt.engine.api.resource.DiskSnapshotResource; import org.ovirt.engine.api.resource.DiskSnapshotsResource; -import org.ovirt.engine.core.common.action.RemoveDiskSnapshotsParameters; -import org.ovirt.engine.core.common.action.VdcActionType; import org.ovirt.engine.core.common.businessentities.storage.Disk; import org.ovirt.engine.core.common.queries.IdQueryParameters; import org.ovirt.engine.core.common.queries.VdcQueryType; @@ -46,11 +43,6 @@ collection.getDiskSnapshots().add(addLinks(populate(diskSnapshot, disk))); } return collection; - } - - @Override - protected Response performRemove(String id) { - return performAction(VdcActionType.RemoveDiskSnapshots, new RemoveDiskSnapshotsParameters(Guid.createGuidFromString(id))); } @Override diff --git a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainDiskSnapshotResourceTest.java b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainDiskSnapshotResourceTest.java index 1e08a95..eda80b6 100644 --- a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainDiskSnapshotResourceTest.java +++ b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainDiskSnapshotResourceTest.java @@ -1,7 +1,11 @@ package org.ovirt.engine.api.restapi.resource; +import java.util.ArrayList; + import org.junit.Test; import org.ovirt.engine.api.model.DiskSnapshot; +import org.ovirt.engine.core.common.action.RemoveDiskSnapshotsParameters; +import org.ovirt.engine.core.common.action.VdcActionType; import org.ovirt.engine.core.common.businessentities.storage.Disk; import org.ovirt.engine.core.common.businessentities.storage.DiskImage; import org.ovirt.engine.core.common.queries.IdQueryParameters; @@ -33,6 +37,25 @@ verifyModelSpecific(diskSnapshot, 1); } + @Test + public void testRemove() { + // setUriInfo(setUpBasicUriExpectations()); + setUpEntityQueryExpectations(VdcQueryType.GetDiskSnapshotByImageId, IdQueryParameters.class, + new String[] { "Id" }, new Object[] { IMAGE_ID }, + getEntity(1)); + ArrayList<Guid> ids = new ArrayList<>(); + ids.add(GUIDS[1]); + setUriInfo(setUpActionExpectations( + VdcActionType.RemoveDiskSnapshots, + RemoveDiskSnapshotsParameters.class, + new String[] { "ImageIds" }, + new Object[] { ids }, + true, + true)); + verifyRemove(resource.remove()); + + } + @Override protected Disk getEntity(int index) { DiskImage entity = new DiskImage(); -- To view, visit https://gerrit.ovirt.org/42076 To unsubscribe, visit https://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I63d10b373ae833fe300b855768512bcb3056455c Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Ori Liel <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
