Federico Simoncelli has uploaded a new change for review.

Change subject: [wip] core: remove redundant image listing by pool
......................................................................

[wip] core: remove redundant image listing by pool

Change-Id: I6ed7de8141b73cec53899cf277a9fdfdc06f2fc1
Signed-off-by: Federico Simoncelli <fsimo...@redhat.com>
---
M backend/manager/dbscripts/repo_files_meta_data_sp.sql
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetImagesListByStoragePoolIdQuery.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetImagesListQuery.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetImagesListQueryBase.java
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/IsoDomainListSyncronizer.java
M 
backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/RepoFileMetaDataDAO.java
M 
backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/RepoFileMetaDataDAODbFacadeImpl.java
7 files changed, 16 insertions(+), 111 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/66/13866/1

diff --git a/backend/manager/dbscripts/repo_files_meta_data_sp.sql 
b/backend/manager/dbscripts/repo_files_meta_data_sp.sql
index 0b41568..e568f06 100644
--- a/backend/manager/dbscripts/repo_files_meta_data_sp.sql
+++ b/backend/manager/dbscripts/repo_files_meta_data_sp.sql
@@ -31,21 +31,8 @@
 END; $procedure$
 LANGUAGE plpgsql;
 
-
-Create or replace FUNCTION 
GetRepo_files_by_storage_domain_and_storage_pool(v_storage_pool_id UUID,
-       v_storage_domain_id UUID, v_file_type INTEGER)
-RETURNS SETOF storage_domain_file_repos
-   AS $procedure$
-BEGIN
-   RETURN QUERY SELECT storage_domain_file_repos.*
-   FROM storage_domain_file_repos
-   WHERE storage_domain_id = v_storage_domain_id
-   AND storage_pool_id = v_storage_pool_id
-   AND storage_domain_file_repos.file_type = v_file_type
-   ORDER BY storage_domain_file_repos.last_refreshed;
-END; $procedure$
-LANGUAGE plpgsql;
-
+DROP FUNCTION IF EXISTS 
GetRepo_files_by_storage_domain_and_storage_pool(v_storage_pool_id UUID,
+    v_storage_domain_id UUID, v_file_type INTEGER);
 
 Create or replace FUNCTION GetRepo_files_by_storage_domain(v_storage_domain_id 
UUID, v_file_type INTEGER)
 RETURNS SETOF repo_file_meta_data
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetImagesListByStoragePoolIdQuery.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetImagesListByStoragePoolIdQuery.java
index 3d241c9..6466ecc 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetImagesListByStoragePoolIdQuery.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetImagesListByStoragePoolIdQuery.java
@@ -1,8 +1,6 @@
 package org.ovirt.engine.core.bll;
 
-import java.util.List;
 
-import org.ovirt.engine.core.common.businessentities.RepoFileMetaData;
 import org.ovirt.engine.core.common.businessentities.storage_pool;
 import 
org.ovirt.engine.core.common.queries.GetImagesListByStoragePoolIdParameters;
 import org.ovirt.engine.core.compat.Guid;
@@ -17,19 +15,15 @@
         super(parameters);
     }
 
+    /**
+     * @return The storage domain to get the images from
+     */
+    @Override
     protected Guid getStorageDomainId() {
         if (doesUserHavePermissionsOnStoragePool()) {
             return 
getDbFacade().getStorageDomainDao().getIsoStorageDomainIdForPool(getStoragePoolId());
         }
         return null;
-    }
-
-    @Override
-    protected List<RepoFileMetaData> 
getUserRequestForStorageDomainRepoFileList() {
-        return 
IsoDomainListSyncronizer.getInstance().getUserRequestForStoragePoolAndDomainRepoFileList
-                (getStoragePoolId(), getStorageDomainId(),
-                        getParameters().getImageType(),
-                        getParameters().getForceRefresh());
     }
 
     /**
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetImagesListQuery.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetImagesListQuery.java
index 311f3a8..4b0af46 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetImagesListQuery.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetImagesListQuery.java
@@ -1,8 +1,5 @@
 package org.ovirt.engine.core.bll;
 
-import java.util.List;
-
-import org.ovirt.engine.core.common.businessentities.RepoFileMetaData;
 import org.ovirt.engine.core.common.queries.GetImagesListParameters;
 import org.ovirt.engine.core.compat.Guid;
 
@@ -13,16 +10,10 @@
         super(parameters);
     }
 
-    protected List<RepoFileMetaData> 
getUserRequestForStorageDomainRepoFileList() {
-        return 
IsoDomainListSyncronizer.getInstance().getUserRequestForStorageDomainRepoFileList
-                (getStorageDomainId(),
-                        getParameters().getImageType(),
-                        getParameters().getForceRefresh());
-    }
-
     /**
      * @return The storage domain to get the images from
      */
+    @Override
     protected Guid getStorageDomainId() {
         return getParameters().getStorageDomainId();
     }
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetImagesListQueryBase.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetImagesListQueryBase.java
index b537512..62d76e0 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetImagesListQueryBase.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GetImagesListQueryBase.java
@@ -5,6 +5,7 @@
 import org.ovirt.engine.core.common.businessentities.RepoFileMetaData;
 import org.ovirt.engine.core.common.errors.VdcBllErrors;
 import org.ovirt.engine.core.common.queries.GetImagesListParametersBase;
+import org.ovirt.engine.core.compat.Guid;
 
 
 public abstract class GetImagesListQueryBase<P extends 
GetImagesListParametersBase> extends QueriesCommandBase<P> {
@@ -23,6 +24,13 @@
         }
     }
 
-    protected abstract List<RepoFileMetaData> 
getUserRequestForStorageDomainRepoFileList();
+    /**
+     * @return The storage domain to get the images from
+     */
+    protected abstract Guid getStorageDomainId();
 
+    protected List<RepoFileMetaData> 
getUserRequestForStorageDomainRepoFileList() {
+        return 
IsoDomainListSyncronizer.getInstance().getUserRequestForStorageDomainRepoFileList
+                (getStorageDomainId(), getParameters().getImageType(), 
getParameters().getForceRefresh());
+    }
 }
diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/IsoDomainListSyncronizer.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/IsoDomainListSyncronizer.java
index 1e2784a..87acc8f 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/IsoDomainListSyncronizer.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/IsoDomainListSyncronizer.java
@@ -161,37 +161,6 @@
         return repoList;
     }
 
-    /**
-     * Returns a RepoFilesMetaData list with Iso file names for storage domain 
Id and with file type extension.<BR>
-     * If user choose to refresh the cache, and a problem occurs, then returns 
null.
-     *
-     * @param storagePoolId
-     *            - The storage pool Id
-     * @param storageDomainId
-     *            - The storage domain Id, which we fetch the Iso list from.
-     * @param imageType
-     *            - The imageType we want to fetch the files from the cache.
-     * @param forceRefresh
-     *            - Indicates if the domain should be refreshed from VDSM.
-     * @return List of RepoFilesMetaData files or null (If fetch from VDSM 
failed).
-     */
-    public List<RepoFileMetaData> 
getUserRequestForStoragePoolAndDomainRepoFileList(Guid storagePoolId,
-            Guid storageDomainId,
-            ImageFileType imageType,
-            boolean forceRefresh) {
-        // The result list we send back.
-        List<RepoFileMetaData> repoList = null;
-
-        if (! isStorageDomainValid(storageDomainId, imageType, forceRefresh)){
-            return null;
-        }
-        // At any case, if refreshed or not, get Iso list from the cache.
-        repoList = getCachedIsoListByStoragePoolAndDomainId(storagePoolId, 
storageDomainId, imageType);
-
-        // Return list of repository files.
-        return repoList;
-    }
-
     private boolean refreshRepos(Guid storageDomainId, ImageFileType 
imageType, boolean forceRefresh) {
         boolean res = true;
         List<RepoFileMetaData> tempProblematicRepoFileList = new 
ArrayList<RepoFileMetaData>();
@@ -348,27 +317,6 @@
                 }
             });
         }
-    }
-
-    /**
-     * Returns the cached Iso file meta data list, of the storage pool Id with 
the storage domain id.
-     *
-     * @param isoStoragePoolId
-     *            - The storage domain Id we want to get the file list from.
-     * @param isoStorageDomainId
-     *            - The storage pool Id we want to get the file list from.
-     * @param imageType
-     *            - The file type extension (ISO  or Floppy).
-     * @return List of Iso file fetched from DB, if parameter is invalid 
returns an empty list.
-     */
-    public List<RepoFileMetaData> 
getCachedIsoListByStoragePoolAndDomainId(Guid isoStoragePoolId, Guid 
isoStorageDomainId, ImageFileType imageType) {
-        List<RepoFileMetaData> fileListMD = new ArrayList<RepoFileMetaData>();
-        // Check validation of parameters.
-        if (isoStorageDomainId != null && isoStoragePoolId != null && 
VmRunHandler.getInstance().findActiveISODomain(isoStoragePoolId) != null) {
-            // Get all the Iso files of storage and domain ID.
-            fileListMD = 
repoStorageDom.getRepoListForStorageDomainAndStoragePool(isoStoragePoolId, 
isoStorageDomainId, imageType);
-        }
-        return fileListMD;
     }
 
     /**
diff --git 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/RepoFileMetaDataDAO.java
 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/RepoFileMetaDataDAO.java
index 415950d..fc24e1d 100644
--- 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/RepoFileMetaDataDAO.java
+++ 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/RepoFileMetaDataDAO.java
@@ -31,13 +31,6 @@
     public void addRepoFileMap(RepoFileMetaData map);
 
     /**
-     * Returns a list of repository files with specific file extension from 
storage domain id with specific status. If
-     * no repository found, will return an empty list.
-     */
-    public List<RepoFileMetaData> 
getRepoListForStorageDomainAndStoragePool(Guid storagePoolId, Guid 
storageDomainId,
-            ImageFileType fileType);
-
-    /**
      * Returns a list of repository files with specific file extension from 
storage domain id.<BR/>
      * If no repository found, will return an empty list.
      */
diff --git 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/RepoFileMetaDataDAODbFacadeImpl.java
 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/RepoFileMetaDataDAODbFacadeImpl.java
index 3335a0e..3a09587 100644
--- 
a/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/RepoFileMetaDataDAODbFacadeImpl.java
+++ 
b/backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/RepoFileMetaDataDAODbFacadeImpl.java
@@ -44,22 +44,6 @@
     }
 
     /**
-     * Returns a list of repository files with specific file extension from 
storage domain id with specific status.
-     */
-    @Override
-    public List<RepoFileMetaData> 
getRepoListForStorageDomainAndStoragePool(Guid storagePoolId, Guid 
storageDomainId,
-            ImageFileType fileType) {
-        MapSqlParameterSource parameterSource = 
getCustomMapSqlParameterSource().addValue("storage_pool_id",
-                storagePoolId);
-        parameterSource.addValue("storage_domain_id", storageDomainId);
-        parameterSource.addValue("file_type", fileType.getValue());
-
-        return 
getCallsHandler().executeReadList("GetRepo_files_by_storage_domain_and_storage_pool",
-                StorageDomainRepoFileMetaDataMapper.instance,
-                parameterSource);
-    }
-
-    /**
      * Returns a list of repository files with specific file extension from 
storage domain id.<BR/>
      * If no repository is found, the method will return an empty list.
      */


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

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

Reply via email to