@Override protected Guid getStoragePoolId() { return getEntity() != null ? getEntity().getStoragePoolId() : null; }
@Override public Guid getStoragePoolId() { if (storagePoolId == null) { if (storagePool != null) { storagePoolId = storagePool.getId(); } else if (getStorageDomain() != null) { storagePoolId = getStorageDomain().getStoragePoolId(); } } return storagePoolId; }
private void activate() { ArrayList<ActionParametersBase> list = new ArrayList<>(); for (Object item : getSelectedItems()) { StorageDomain a = (StorageDomain) item; StorageDomainPoolParametersBase parameters = new StorageDomainPoolParametersBase(); parameters.setStorageDomainId(getEntity().getId()); if (a.getStoragePoolId() != null) { parameters.setStoragePoolId(a.getStoragePoolId()); } list.add(parameters); } Frontend.getInstance().runMultipleAction(ActionType.ActivateStorageDomain, list, result -> {}, null); }
protected boolean allowedStorageDomain(List<StorageDomain> sourceActiveStorageDomains, DiskImage diskImage, DiskModel templateDisk, StorageDomain sd) { // Destination should be in the same pool as the disk. boolean connectedToSamePool = sd.getStoragePoolId().equals(diskImage.getStoragePoolId()); if (!connectedToSamePool) { return false; } if (!isDomainValidForDiskTemplate(templateDisk, sd)) { return false; } if (!isDiskValidForStorage(diskImage, sd)) { return false; } return true; }
private void scanDisks() { StorageDomain storageDomain = getSelectedItem(); if (storageDomain != null) { Frontend.getInstance().runAction(ActionType.ScanStorageForUnregisteredDisks, new StorageDomainParametersBase(storageDomain.getStoragePoolId(), storageDomain.getId())); } }
protected void onInitStorageDomains(List<StorageDomain> storages) { for (StorageDomain storage : storages) { if (Linq.isDataActiveStorageDomain(storage)) { getActiveStorageDomains().add(storage); } } Collections.sort(getActiveStorageDomains(), new NameableComparator()); if (!storages.isEmpty()) { AsyncDataProvider.getInstance().getDataCenterById(new AsyncQuery<>(dataCenter -> { setDataCenter(dataCenter); setQuotaEnforcementType(dataCenter.getQuotaEnforcementType()); postInitStorageDomains(); }), storages.get(0).getStoragePoolId()); } else { postInitStorageDomains(); } }
private void onMaintenance() { final ConfirmationModel confirmationModel = (ConfirmationModel) getWindow(); ArrayList<ActionParametersBase> list = new ArrayList<>(); for (StorageDomain item : getSelectedItems()) { DeactivateStorageDomainWithOvfUpdateParameters parameters = new DeactivateStorageDomainWithOvfUpdateParameters(); parameters.setStorageDomainId(getEntity().getId()); parameters.setForceMaintenance(confirmationModel.getForce().getEntity()); if (item.getStoragePoolId() != null) { parameters.setStoragePoolId(item.getStoragePoolId()); } list.add(parameters); } confirmationModel.startProgress(); Frontend.getInstance().runMultipleAction(ActionType.DeactivateStorageDomainWithOvfUpdate, list, result -> { confirmationModel.stopProgress(); setWindow(null); }, null); }
/** * Asserts the result returned from {@link StorageDomainDao#getAllForStoragePool(Guid)} is correct * @param result The result to check */ private static void assertGetAllForStoragePoolResult(List<StorageDomain> result, Guid expectedStoragePoolId) { assertFalse(result.isEmpty()); for (StorageDomain domain : result) { assertEquals(expectedStoragePoolId, domain.getStoragePoolId()); assertEquals(StorageDomainSharedStatus.Active, domain.getStorageDomainSharedStatus(), "Wrong shared status"); } }
@Override protected void syncSearch() { if (getEntity() == null) { return; } super.syncSearch(); IdQueryParameters tempVar = new IdQueryParameters(getEntity().getId()); tempVar.setRefresh(getIsQueryFirstTime()); Frontend.getInstance().runQuery(QueryType.GetStorageDomainListById, tempVar, new AsyncQuery<QueryReturnValue>(returnValue -> { ArrayList<StorageDomain> domains = returnValue.getReturnValue(); for (StorageDomain domain : domains) { domain.setId(domain.getStoragePoolId()); } Collections.sort (domains, Comparator.comparing(StorageDomain::getStoragePoolName, new LexoNumericComparator())); setItems(domains); setIsEmpty(getItems().size() == 0); })); }
/** * Adds to the given Storage Domain the references to the Data Centers it is attached to. * * @param resource the resource that will be used to run the required queries * @param model the model of the Storage Domain where the references will be added */ public static void addAttachedDataCenterReferences(BackendResource resource, StorageDomain model) { // Note that this implementation is far from efficient, as we are retrieving all the content of the Storage // Domains and immediately discarding everything but the identifiers of the Data Centers. It would be better to // have a query that returns only the identifiers. Guid id = Guid.createGuidFromString(model.getId()); QueryReturnValue result = resource.runQuery(QueryType.GetStorageDomainListById, new IdQueryParameters(id)); if (result != null && result.getSucceeded()) { List<org.ovirt.engine.core.common.businessentities.StorageDomain> storageDomains = result.getReturnValue(); if (CollectionUtils.isNotEmpty(storageDomains)) { DataCenters dataCenters = new DataCenters(); for (org.ovirt.engine.core.common.businessentities.StorageDomain storageDomain : storageDomains) { DataCenter dataCenter = new DataCenter(); dataCenter.setId(storageDomain.getStoragePoolId().toString()); dataCenters.getDataCenters().add(dataCenter); } model.setDataCenters(dataCenters); } } } }
DetachStorageDomainFromPoolParameters param = new DetachStorageDomainFromPoolParameters(); param.setStorageDomainId(getEntity().getId()); if (storageDomain.getStoragePoolId() != null) { param.setStoragePoolId(storageDomain.getStoragePoolId());
private void register() { if (getWindow() != null) { return; } final RegisterDiskModel registerDiskModel = new RegisterDiskModel(); registerDiskModel.setTargetAvailable(false); setWindow(registerDiskModel); // noinspection unchecked registerDiskModel.setEntity(this); registerDiskModel.init(); registerDiskModel.setTitle(ConstantsManager.getInstance().getConstants().importDisksTitle()); registerDiskModel.setHelpTag(HelpTag.import_disks); registerDiskModel.setHashName("import_disks"); //$NON-NLS-1$ registerDiskModel.startProgress(); AsyncDataProvider.getInstance().getDataCenterById(new AsyncQuery<>(dataCenter -> { registerDiskModel.setQuotaEnforcementType(dataCenter.getQuotaEnforcementType()); registerDiskModel.setDisks(DiskModel.disksToDiskModelList(getSelectedItems())); registerDiskModel.updateStorageDomain(getEntity()); registerDiskModel.stopProgress(); }), getEntity().getStoragePoolId()); }