Maor Lipchuk has uploaded a new change for review.

Change subject: REST: Add calls for queries to get unregistered entities.
......................................................................

REST: Add calls for queries to get unregistered entities.

Add support for REST to call queries for unregistered entities.

Change-Id: I7adacfabe640fba6b0ae1a77d27cbe03c28edd37
Signed-off-by: Maor Lipchuk <[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/BackendStorageDomainTemplatesResource.java
M 
backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendStorageDomainVmsResource.java
3 files changed, 28 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/28/27628/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 c21bfca..4992c82 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
@@ -22,7 +22,7 @@
                                                                    R extends 
BaseResource,
                                                                    Q extends 
IVdcQueryable>
     extends AbstractBackendCollectionResource<R, Q> {
-
+    protected static final String UNREGISTERED_CONSTRAINT_PARAMETER = 
"unregistered";
     protected Guid storageDomainId;
 
     public AbstractBackendStorageDomainContentsResource(Guid storageDomainId,
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..0c31a59 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
@@ -1,5 +1,6 @@
 package org.ovirt.engine.api.restapi.resource;
 
+import java.util.ArrayList;
 import java.util.Collection;
 import java.util.HashMap;
 import java.util.List;
@@ -7,6 +8,7 @@
 
 import javax.ws.rs.core.Response;
 
+import org.ovirt.engine.api.common.util.QueryHelper;
 import org.ovirt.engine.api.model.Template;
 import org.ovirt.engine.api.model.Templates;
 import org.ovirt.engine.api.resource.RemovableStorageDomainContentsResource;
@@ -16,6 +18,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.IdAndNameQueryParameters;
 import org.ovirt.engine.core.common.queries.VdcQueryType;
 import org.ovirt.engine.core.compat.Guid;
 
@@ -30,6 +33,18 @@
     @Override
     public Templates list() {
         Templates templates = new Templates();
+        if (QueryHelper.hasMatrixParam(getUriInfo(), 
UNREGISTERED_CONSTRAINT_PARAMETER)) {
+            List<org.ovirt.engine.core.common.businessentities.VmTemplate> 
unregisteredTemplates =
+                    
getBackendCollection(VdcQueryType.GetUnregisteredVmTemplates, new 
IdAndNameQueryParameters(storageDomainId,
+                            "Template"));
+            List<Template> collection = new ArrayList<Template>();
+            for (org.ovirt.engine.core.common.businessentities.VmTemplate 
entity : unregisteredTemplates) {
+                Template vmTemplate = map(entity);
+                collection.add(addLinks(populate(vmTemplate, entity)));
+            }
+            templates.getTemplates().addAll(collection);
+        }
+
         templates.getTemplates().addAll(getCollection());
         return templates;
     }
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 24f5463..af54155 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
@@ -15,6 +15,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.IdAndNameQueryParameters;
 import org.ovirt.engine.core.common.queries.VdcQueryType;
 import org.ovirt.engine.core.compat.Guid;
 
@@ -29,6 +30,17 @@
     @Override
     public VMs list() {
         VMs vms = new VMs();
+        if (QueryHelper.hasMatrixParam(getUriInfo(), 
UNREGISTERED_CONSTRAINT_PARAMETER)) {
+            List<org.ovirt.engine.core.common.businessentities.VM> 
unregisteredVms =
+                    getBackendCollection(VdcQueryType.GetUnregisteredVms, new 
IdAndNameQueryParameters(storageDomainId,
+                            "VM"));
+            List<VM> collection = new ArrayList<VM>();
+            for (org.ovirt.engine.core.common.businessentities.VM entity : 
unregisteredVms) {
+                VM vm = map(entity);
+                collection.add(addLinks(populate(vm, entity)));
+            }
+            vms.getVMs().addAll(collection);
+        }
         vms.getVMs().addAll(getCollection());
         return vms;
     }


-- 
To view, visit http://gerrit.ovirt.org/27628
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I7adacfabe640fba6b0ae1a77d27cbe03c28edd37
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Maor Lipchuk <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to