Maor Lipchuk has uploaded a new change for review. Change subject: core[WIP]: Seperate queries for file and block_2 ......................................................................
core[WIP]: Seperate queries for file and block_2 WIP Change-Id: Id5d24edf6f307e1986cbfc5c82305ef5a43da968 Bug-Url: https://bugzilla.redhat.com/?????? Signed-off-by: Maor Lipchuk <[email protected]> --- M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddStoragePoolWithStoragesCommand.java M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/GetStorageDomainsWithAttachedStoragePoolGuidQuery.java M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/StorageDomainsAndStoragePoolIdQueryParameters.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/dataprovider/AsyncDataProvider.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageListModel.java 5 files changed, 35 insertions(+), 18 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/07/36407/1 diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddStoragePoolWithStoragesCommand.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddStoragePoolWithStoragesCommand.java index 52e224c..dcdcf16 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddStoragePoolWithStoragesCommand.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/AddStoragePoolWithStoragesCommand.java @@ -325,7 +325,7 @@ private boolean isStorageDomainAttachedToStoragePool(StorageDomain storageDomain) { List<StorageDomain> storageDomainList = (List<StorageDomain>) getBackend().runInternalQuery(VdcQueryType.GetStorageDomainsWithAttachedStoragePoolGuid, - new StorageDomainsAndStoragePoolIdQueryParameters(storageDomain, getStoragePoolId())).getReturnValue(); + new StorageDomainsAndStoragePoolIdQueryParameters(storageDomain, getStoragePoolId(), getVds().getId())).getReturnValue(); return !storageDomainList.isEmpty(); } } diff --git a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/GetStorageDomainsWithAttachedStoragePoolGuidQuery.java b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/GetStorageDomainsWithAttachedStoragePoolGuidQuery.java index 97ce631..0530858 100644 --- a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/GetStorageDomainsWithAttachedStoragePoolGuidQuery.java +++ b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/GetStorageDomainsWithAttachedStoragePoolGuidQuery.java @@ -40,15 +40,18 @@ @Override protected void executeQueryCommand() { - // Get a Host which is at UP state to connect to the Storage Domain. - List<VDS> hosts = - getDbFacade().getVdsDao().getAllForStoragePoolAndStatus(getParameters().getId(), VDSStatus.Up); - if (!hosts.isEmpty()) { - vdsId = hosts.get(new Random().nextInt(hosts.size())).getId(); - log.info("vds id '{}' was chosen to fetch the Storage domain info", vdsId); - } else { - log.warn("There is no available vds in UP state to fetch the Storage domain info from VDSM"); - return; + vdsId = getParameters().getVdsId(); + if (vdsId == null) { + // Get a Host which is at UP state to connect to the Storage Domain. + List<VDS> hosts = + getDbFacade().getVdsDao().getAllForStoragePoolAndStatus(getParameters().getId(), VDSStatus.Up); + if (!hosts.isEmpty()) { + vdsId = hosts.get(new Random().nextInt(hosts.size())).getId(); + log.info("vds id '{}' was chosen to fetch the Storage domain info", vdsId); + } else { + log.warn("There is no available vds in UP state to fetch the Storage domain info from VDSM"); + return; + } } List<StorageDomainStatic> storageDomainsWithAttachedStoragePoolId = new ArrayList<>(); diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/StorageDomainsAndStoragePoolIdQueryParameters.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/StorageDomainsAndStoragePoolIdQueryParameters.java index dc2a533..8fde705 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/StorageDomainsAndStoragePoolIdQueryParameters.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/queries/StorageDomainsAndStoragePoolIdQueryParameters.java @@ -10,6 +10,15 @@ public class StorageDomainsAndStoragePoolIdQueryParameters extends IdQueryParameters { private List<StorageDomain> storageDomainList; private StorageServerConnections storageServerConnection; + private Guid vdsId; + + public Guid getVdsId() { + return vdsId; + } + + public void setVdsId(Guid vdsId) { + this.vdsId = vdsId; + } public List<StorageDomain> getStorageDomainList() { return storageDomainList; @@ -30,20 +39,23 @@ public StorageDomainsAndStoragePoolIdQueryParameters() { } - public StorageDomainsAndStoragePoolIdQueryParameters(List<StorageDomain> storageDomainList, Guid storagePoolId) { + public StorageDomainsAndStoragePoolIdQueryParameters(List<StorageDomain> storageDomainList, Guid storagePoolId, Guid vdsId) { super(storagePoolId); this.storageDomainList = storageDomainList; + this.vdsId = vdsId; } - public StorageDomainsAndStoragePoolIdQueryParameters(StorageDomain storageDomain, Guid storagePoolId) { + public StorageDomainsAndStoragePoolIdQueryParameters(StorageDomain storageDomain, Guid storagePoolId, Guid vdsId) { super(storagePoolId); List<StorageDomain> storageDomainList = new ArrayList<StorageDomain>(); storageDomainList.add(storageDomain); this.storageDomainList = storageDomainList; + this.vdsId = vdsId; } - public StorageDomainsAndStoragePoolIdQueryParameters(StorageServerConnections storageServerConnection, Guid storagePoolId) { + public StorageDomainsAndStoragePoolIdQueryParameters(StorageServerConnections storageServerConnection, Guid storagePoolId, Guid vdsId) { super(storagePoolId); this.storageServerConnection = storageServerConnection; + this.vdsId = vdsId; } } diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/dataprovider/AsyncDataProvider.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/dataprovider/AsyncDataProvider.java index f5f85fc..8cf7c42 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/dataprovider/AsyncDataProvider.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/dataprovider/AsyncDataProvider.java @@ -334,12 +334,12 @@ public void getStorageDomainsWithAttachedStoragePoolGuid( AsyncQuery aQuery, StoragePool storagePool, List<StorageDomain> storageDomains) { - getStorageDomainsWithAttachedStoragePoolGuid(aQuery, storagePool, storageDomains, null); + getStorageDomainsWithAttachedStoragePoolGuid(aQuery, storagePool, storageDomains, null, null); } public void getStorageDomainsWithAttachedStoragePoolGuid( AsyncQuery aQuery, StoragePool storagePool, - List<StorageDomain> storageDomains, StorageServerConnections storageServerConnection) { + List<StorageDomain> storageDomains, StorageServerConnections storageServerConnection, Guid vdsId) { aQuery.converterCallback = new IAsyncConverter() { @Override public Object Convert(Object source, AsyncQuery _asyncQuery) { @@ -349,8 +349,8 @@ }; StorageDomainsAndStoragePoolIdQueryParameters parameters = storageDomains != null ? - new StorageDomainsAndStoragePoolIdQueryParameters(storageDomains, storagePool.getId()) : - new StorageDomainsAndStoragePoolIdQueryParameters(storageServerConnection, storagePool.getId()); + new StorageDomainsAndStoragePoolIdQueryParameters(storageDomains, storagePool.getId(), vdsId) : + new StorageDomainsAndStoragePoolIdQueryParameters(storageServerConnection, storagePool.getId(), vdsId); Frontend.getInstance().runQuery(VdcQueryType.GetStorageDomainsWithAttachedStoragePoolGuid, parameters, aQuery); diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageListModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageListModel.java index 26e1e0a..bf69890 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageListModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/storage/StorageListModel.java @@ -2216,6 +2216,8 @@ return; } + VDS host = storageModel.getHost().getSelectedItem(); + AsyncDataProvider.getInstance().getStorageDomainsWithAttachedStoragePoolGuid( new AsyncQuery(this, new INewAsyncCallback() { @Override @@ -2243,7 +2245,7 @@ okCommand.execute(); } } - }), storagePool, storageDomains, storageServerConnections); + }), storagePool, storageDomains, storageServerConnections, host.getId()); } @Override -- To view, visit http://gerrit.ovirt.org/36407 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Id5d24edf6f307e1986cbfc5c82305ef5a43da968 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
