Dima Kuznetsov has uploaded a new change for review. Change subject: api: Add created Disk object on Glance image import ......................................................................
api: Add created Disk object on Glance image import Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1169228 Change-Id: Ic7a6203a318763f13fca8f0627bb0188b7eb2984 Signed-off-by: Dima Kuznetsov <dkuzn...@redhat.com> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportRepoImageCreateTaskHandler.java M backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/openstack/BackendOpenStackImageResource.java 2 files changed, 26 insertions(+), 1 deletion(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/55/38255/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportRepoImageCreateTaskHandler.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportRepoImageCreateTaskHandler.java index 7e727b7..9a4d07b 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportRepoImageCreateTaskHandler.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/ImportRepoImageCreateTaskHandler.java @@ -61,6 +61,7 @@ } ExecutionHandler.setAsyncJob(enclosingCommand.getExecutionContext(), true); + enclosingCommand.getReturnValue().setActionReturnValue(enclosingCommand.getParameters().getDiskImage().getId()); enclosingCommand.getReturnValue().setSucceeded(true); } } diff --git a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/openstack/BackendOpenStackImageResource.java b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/openstack/BackendOpenStackImageResource.java index 0f20b33..4778f1d 100644 --- a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/openstack/BackendOpenStackImageResource.java +++ b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/openstack/BackendOpenStackImageResource.java @@ -23,10 +23,14 @@ import org.ovirt.engine.api.model.OpenStackImageProvider; import org.ovirt.engine.api.resource.openstack.OpenStackImageResource; import org.ovirt.engine.api.restapi.resource.AbstractBackendActionableResource; +import org.ovirt.engine.api.utils.LinkHelper; import org.ovirt.engine.core.common.action.ImportRepoImageParameters; import org.ovirt.engine.core.common.action.VdcActionType; +import org.ovirt.engine.core.common.businessentities.Disk; import org.ovirt.engine.core.common.businessentities.RepoImage; import org.ovirt.engine.core.common.queries.GetImageByIdParameters; +import org.ovirt.engine.core.common.queries.IdQueryParameters; +import org.ovirt.engine.core.common.queries.VdcQueryParametersBase; import org.ovirt.engine.core.common.queries.VdcQueryType; import org.ovirt.engine.core.compat.Guid; @@ -59,6 +63,26 @@ return super.addParents(image); } + protected class DiskIdResolver extends EntityResolver { + + private VdcQueryType query; + private Class<? extends VdcQueryParametersBase> queryParamsClass; + + public DiskIdResolver(VdcQueryType query, Class<? extends VdcQueryParametersBase> queryParamsClass) { + this.query = query; + this.queryParamsClass = queryParamsClass; + } + + @Override + public Object lookupEntity(Object id) throws BackendFailureException { + Disk disk = doGetEntity(Disk.class, + query, getQueryParams(queryParamsClass, id), id.toString()); + org.ovirt.engine.api.model.Disk model = new org.ovirt.engine.api.model.Disk(); + model.setId(disk.getId().toString()); + return LinkHelper.addLinks(getUriInfo(), model); + } + } + @Override public Response doImport(Action action) { validateParameters(action, "storageDomain.id|name"); @@ -75,6 +99,6 @@ } parameters.setImportAsTemplate(action.isImportAsTemplate()); } - return doAction(VdcActionType.ImportRepoImage, parameters, action); + return doAction(VdcActionType.ImportRepoImage, parameters, action, new DiskIdResolver(VdcQueryType.GetDiskByDiskId, IdQueryParameters.class)); } } -- To view, visit https://gerrit.ovirt.org/38255 To unsubscribe, visit https://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ic7a6203a318763f13fca8f0627bb0188b7eb2984 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Dima Kuznetsov <dkuzn...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches