Daniel Erez has uploaded a new change for review. Change subject: restapi: support custom preview snapshot ......................................................................
restapi: support custom preview snapshot Accept optional 'restore_memory' and 'disks' tags in preview_snapshot action. Preview Snapshot: POST /api/vms/{vm_id}/preview_snapshot <action> <snapshot id="{snapshot_id}"/> <restore_memory>true|false</restore_memory> <disks> <disk id="{disk_id}"> <image_id>{image_id}</image_id> <snapshot id="{snapshot_id}"/> </disk> </disks> </action> Feature-Page: http://www.ovirt.org/Features/Single_Disk_Snapshot#REST-API Change-Id: I89d004dec75aa23c6a7105ddb064e93d7f4652ed Bug-Url: https://bugzilla.redhat.com/1095494 Signed-off-by: Daniel Erez <de...@redhat.com> --- M backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml M backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmResource.java M backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmsResource.java 3 files changed, 8 insertions(+), 1 deletion(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/86/28086/1 diff --git a/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml b/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml index afcda1f..ac01f31 100644 --- a/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml +++ b/backend/manager/modules/restapi/interface/definition/src/main/resources/rsdl_metadata.yaml @@ -384,6 +384,7 @@ parameterType: Action signatures: - mandatoryArguments: {action.snapshot.id: 'xs:string'} + optionalArguments: {action.restore_memory: 'xs:boolean', action.disks.disk--COLLECTION: {disk.id: 'xs:string', disk.image_id: 'xs:string'}} urlparams: {} headers: Content-Type: {value: application/xml|json, required: true} diff --git a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmResource.java b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmResource.java index 1f4880d..8e59da8 100644 --- a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmResource.java +++ b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmResource.java @@ -295,6 +295,12 @@ validateParameters(action, "snapshot.id"); TryBackToAllSnapshotsOfVmParameters tryBackParams = new TryBackToAllSnapshotsOfVmParameters(guid, asGuid(action.getSnapshot().getId())); + if (action.isSetRestoreMemory()) { + tryBackParams.setRestoreMemory(action.isRestoreMemory()); + } + if (action.isSetDisks()) { + tryBackParams.setDisks(getParent().mapDisks(action.getDisks())); + } Response response = doAction(VdcActionType.TryBackToAllSnapshotsOfVm, tryBackParams, action); diff --git a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmsResource.java b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmsResource.java index 5de80ae..64a499e 100644 --- a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmsResource.java +++ b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendVmsResource.java @@ -391,7 +391,7 @@ new QueryIdResolver<Guid>(VdcQueryType.GetVmByVmId, IdQueryParameters.class)); } - private ArrayList<DiskImage> mapDisks(Disks disks) { + public ArrayList<DiskImage> mapDisks(Disks disks) { ArrayList<DiskImage> diskImages = null; if (disks!=null && disks.isSetDisks()) { diskImages = new ArrayList<DiskImage>(); -- To view, visit http://gerrit.ovirt.org/28086 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I89d004dec75aa23c6a7105ddb064e93d7f4652ed Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Daniel Erez <de...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches