Ravi Nori has uploaded a new change for review. Change subject: restapi : [RFE] Add the option to retrieve the top X disks in a storage domain(#950129) ......................................................................
restapi : [RFE] Add the option to retrieve the top X disks in a storage domain(#950129) Add the option to retrieve the top X consuming VM's in a storage domain ( disk space wise ) using rest api Change-Id: Ifbefd30b1b1e62d87c30a836236028777e734a7d Bug-Url: https://bugzilla.redhat.com/950129 Signed-off-by: Ravi Nori <[email protected]> --- M backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/AbstractBackendStorageDomainContentsResource.java M backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainResource.java M backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainTemplatesResource.java M backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainVmsResource.java M backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainsResourceTest.java 5 files changed, 17 insertions(+), 2 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/97/20297/1 diff --git a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/AbstractBackendStorageDomainContentsResource.java b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/AbstractBackendStorageDomainContentsResource.java index 13d410a..074683d 100644 --- a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/AbstractBackendStorageDomainContentsResource.java +++ b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/AbstractBackendStorageDomainContentsResource.java @@ -87,6 +87,7 @@ switch (storageDomainType) { case Data: case Master: + entities = getEntitiesFromDomain(); break; case ImportExport: entities = getEntitiesFromExportDomain(); @@ -103,4 +104,6 @@ } protected abstract Collection<Q> getEntitiesFromExportDomain(); + + protected abstract Collection<Q> getEntitiesFromDomain(); } diff --git a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainResource.java b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainResource.java index 8bf696a..8e846fb 100644 --- a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainResource.java +++ b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainResource.java @@ -119,7 +119,7 @@ return isIsoDomain(storageDomain) ? new String[] { "templates", "vms", "disks", "storageconnections", "images" } : isExportDomain(storageDomain) ? new String[] { "files", "storageconnections", "images" } : isImageDomain(storageDomain) ? new String[] { "templates", "vms", "files", "disks", "storageconnections" } - : new String[] { "templates", "vms", "files", "images" }; + : new String[] { "files", "images" }; } /** diff --git a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainTemplatesResource.java b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainTemplatesResource.java index a2ecaf5..6aacc1a 100644 --- a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainTemplatesResource.java +++ b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainTemplatesResource.java @@ -16,6 +16,7 @@ import org.ovirt.engine.core.common.businessentities.DiskImage; import org.ovirt.engine.core.common.businessentities.VmTemplate; import org.ovirt.engine.core.common.queries.GetAllFromExportDomainQueryParameters; +import org.ovirt.engine.core.common.queries.IdQueryParameters; import org.ovirt.engine.core.common.queries.VdcQueryType; import org.ovirt.engine.core.compat.Guid; @@ -54,6 +55,11 @@ } @Override + protected Collection<VmTemplate> getEntitiesFromDomain() { + return getBackendCollection(VdcQueryType.GetVmTemplatesFromStorageDomain, new IdQueryParameters(storageDomainId)); + } + + @Override @SingleEntityResource public StorageDomainContentResource<Template> getStorageDomainContentSubResource(String id) { return inject(new BackendStorageDomainTemplateResource(this, id)); diff --git a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainVmsResource.java b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainVmsResource.java index 8fa9ee9..25c5d14 100644 --- a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainVmsResource.java +++ b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainVmsResource.java @@ -12,6 +12,7 @@ import org.ovirt.engine.core.common.action.RemoveVmFromImportExportParameters; import org.ovirt.engine.core.common.action.VdcActionType; import org.ovirt.engine.core.common.queries.GetAllFromExportDomainQueryParameters; +import org.ovirt.engine.core.common.queries.IdQueryParameters; import org.ovirt.engine.core.common.queries.VdcQueryType; import org.ovirt.engine.core.compat.Guid; @@ -37,6 +38,11 @@ } @Override + protected Collection<org.ovirt.engine.core.common.businessentities.VM> getEntitiesFromDomain() { + return getBackendCollection(VdcQueryType.GetVmsByStorageDomain, new IdQueryParameters(storageDomainId)); + } + + @Override protected Collection<org.ovirt.engine.core.common.businessentities.VM> getEntitiesFromExportDomain() { GetAllFromExportDomainQueryParameters params = new GetAllFromExportDomainQueryParameters(getDataCenterId(storageDomainId), storageDomainId); diff --git a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainsResourceTest.java b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainsResourceTest.java index f29c18a..7c99f4c 100644 --- a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainsResourceTest.java +++ b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainsResourceTest.java @@ -835,7 +835,7 @@ assertEquals(TARGET, model.getStorage().getVolumeGroup().getLogicalUnits().get(0).getTarget()); assertEquals(ADDRESSES[0], model.getStorage().getVolumeGroup().getLogicalUnits().get(0).getAddress()); assertEquals(PORT, model.getStorage().getVolumeGroup().getLogicalUnits().get(0).getPort()); - assertEquals(3, model.getLinks().size()); + assertEquals(5, model.getLinks().size()); assertEquals("permissions", model.getLinks().get(0).getRel()); assertNotNull(model.getLinks().get(0).getHref()); verifyLinks(model); -- To view, visit http://gerrit.ovirt.org/20297 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ifbefd30b1b1e62d87c30a836236028777e734a7d Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Ravi Nori <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
