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 <[email protected]>
---
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 <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches