Ravi Nori has uploaded a new change for review.

Change subject: restapi : list files with --max issue
......................................................................

restapi : list files with --max issue

List files wth --max parameter retrieves extra results
if the ISO domain has both .iso and .vfd files.

This patch comines the two into 1 query so that the
max number of results is the same as specfied by
--max

Change-Id: I7cf453d430f44dff8725ea11ecc0fa91d99844bc
Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=886794
Signed-off-by: Ravi Nori <rn...@redhat.com>
---
A 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetAllImagesListQuery.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/FileTypeExtension.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/VdcQueryType.java
M 
backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendFilesResource.java
M 
backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendFilesResourceTest.java
5 files changed, 42 insertions(+), 16 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/29/10029/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetAllImagesListQuery.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetAllImagesListQuery.java
new file mode 100644
index 0000000..f90a6e3
--- /dev/null
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetAllImagesListQuery.java
@@ -0,0 +1,33 @@
+package org.ovirt.engine.core.bll;
+
+import java.util.ArrayList;
+import java.util.List;
+import org.ovirt.engine.core.common.businessentities.FileTypeExtension;
+import org.ovirt.engine.core.common.businessentities.RepoFileMetaData;
+import org.ovirt.engine.core.common.queries.GetAllIsoImagesListParameters;
+
+public class GetAllImagesListQuery<P extends GetAllIsoImagesListParameters> 
extends AbstractGetAllImagesListByStorageDomainIdQuery<P> {
+    public GetAllImagesListQuery(P parameters) {
+        super(parameters);
+    }
+
+    @Override
+    protected FileTypeExtension getFileTypeExtension() {
+        return FileTypeExtension.All;
+    }
+
+    private List<RepoFileMetaData> getFileListForExtension(FileTypeExtension 
extension) {
+         return 
IsoDomainListSyncronizer.getInstance().getUserRequestForStorageDomainRepoFileList
+                (getStorageDomainId(),
+                        extension,
+                        getParameters().getForceRefresh());
+    }
+
+    @Override
+    protected List<RepoFileMetaData> 
getUserRequestForStorageDomainRepoFileList() {
+        List<RepoFileMetaData> fileList = new ArrayList<RepoFileMetaData>();
+        fileList.addAll(getFileListForExtension(FileTypeExtension.ISO));
+        fileList.addAll(getFileListForExtension(FileTypeExtension.Floppy));
+        return fileList;
+    }
+}
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/FileTypeExtension.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/FileTypeExtension.java
index 6e8b6fe..afa3eee 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/FileTypeExtension.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/FileTypeExtension.java
@@ -6,7 +6,8 @@
 public enum FileTypeExtension {
     Unknown(0),
     ISO(1),
-    Floppy(2);
+    Floppy(2),
+    All(3);
 
     private int intValue;
     private static Map<Integer, FileTypeExtension> mappings;
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/VdcQueryType.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/VdcQueryType.java
index 66e8ab1..7d173c9 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/VdcQueryType.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/VdcQueryType.java
@@ -90,6 +90,7 @@
     GetAllFloppyImagesList(VdcQueryAuthType.User),
     GetAllIsoImagesListByStoragePoolId(VdcQueryAuthType.User),
     GetAllFloppyImagesListByStoragePoolId(VdcQueryAuthType.User),
+    GetAllImagesList(VdcQueryAuthType.User),
     GetAllDisksByVmId(VdcQueryAuthType.User),
     GetAllAttachableDisks(VdcQueryAuthType.User),
     GetAllDisks,
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendFilesResource.java
 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendFilesResource.java
index 5ea8bab..94d82e0 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendFilesResource.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/main/java/org/ovirt/engine/api/restapi/resource/BackendFilesResource.java
@@ -74,10 +74,8 @@
         GetAllIsoImagesListParameters queryParams = new 
GetAllIsoImagesListParameters(asGuid(storageDomainId));
         queryParams.setForceRefresh(true);
 
-        List<RepoFileMetaData> files = 
getBackendCollection(RepoFileMetaData.class, VdcQueryType.GetAllIsoImagesList,
+        List<RepoFileMetaData> files = 
getBackendCollection(RepoFileMetaData.class, VdcQueryType.GetAllImagesList,
                                     queryParams);
-        files.addAll(getBackendCollection(RepoFileMetaData.class, 
VdcQueryType.GetAllFloppyImagesList,
-                queryParams));
         List<String> fileNames = new LinkedList<String>();
         for (RepoFileMetaData file : files) {
             fileNames.add(file.getRepoFileName());
diff --git 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendFilesResourceTest.java
 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendFilesResourceTest.java
index 27a751f..1f914e9 100644
--- 
a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendFilesResourceTest.java
+++ 
b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendFilesResourceTest.java
@@ -90,7 +90,7 @@
         locales.add(CLIENT_LOCALE);
 
         Throwable t = new RuntimeException(FAILURE);
-        setUpEntityQueryExpectations(VdcQueryType.GetAllIsoImagesList,
+        setUpEntityQueryExpectations(VdcQueryType.GetAllImagesList,
                 GetAllIsoImagesListParameters.class,
                 new String[] { "StorageDomainId" },
                 new Object[] { GUIDS[0] },
@@ -115,7 +115,7 @@
         UriInfo uriInfo = setUpUriExpectations(null);
 
         Throwable t = new RuntimeException(FAILURE);
-        setUpEntityQueryExpectations(VdcQueryType.GetAllIsoImagesList,
+        setUpEntityQueryExpectations(VdcQueryType.GetAllImagesList,
                 GetAllIsoImagesListParameters.class,
                 new String[] { "StorageDomainId" },
                 new Object[] { GUIDS[0] },
@@ -147,7 +147,7 @@
     @Override
     public void testListFailure() throws Exception {
         UriInfo uriInfo = setUpUriExpectations(null);
-        setUpEntityQueryExpectations(VdcQueryType.GetAllIsoImagesList,
+        setUpEntityQueryExpectations(VdcQueryType.GetAllImagesList,
                 GetAllIsoImagesListParameters.class,
                 new String[] { "StorageDomainId" },
                 new Object[] { GUIDS[0] },
@@ -184,19 +184,12 @@
     protected void setUpQueryExpectations(String query, Object failure) throws 
Exception {
         assert(query.equals(""));
 
-        setUpEntityQueryExpectations(VdcQueryType.GetAllIsoImagesList,
+        setUpEntityQueryExpectations(VdcQueryType.GetAllImagesList,
                                      GetAllIsoImagesListParameters.class,
                                      new String[] { "StorageDomainId" },
                                      new Object[] { GUIDS[0] },
                                      setUpFiles(),
                                      failure);
-        setUpEntityQueryExpectations(VdcQueryType.GetAllFloppyImagesList,
-                GetAllIsoImagesListParameters.class,
-                new String[] { "StorageDomainId" },
-                new Object[] { GUIDS[0] },
-                setUpFiles(),
-                failure);
-
         control.replay();
     }
 
@@ -232,7 +225,7 @@
     @Override
     protected void verifyCollection(List<File> collection) throws Exception {
         assertNotNull(collection);
-        assertEquals(NAMES.length * 2, collection.size());
+        assertEquals(NAMES.length, collection.size());
         for (int i = 0; i < NAMES.length; i++) {
             verifyModel(collection.get(i), i);
         }


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I7cf453d430f44dff8725ea11ecc0fa91d99844bc
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Ravi Nori <rn...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to