Updated listStoragePools response - added new managed parameter (#9588)

This commit is contained in:
Suresh Kumar Anaparti 2024-09-04 11:54:33 +05:30 committed by GitHub
parent abaf4b52ad
commit b78aede2b7
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 25 additions and 0 deletions

View File

@ -141,6 +141,10 @@ public class StoragePoolResponse extends BaseResponseWithAnnotations {
@Param(description = "the storage pool capabilities")
private Map<String, String> caps;
@SerializedName(ApiConstants.MANAGED)
@Param(description = "whether this pool is managed or not")
private Boolean managed;
public Map<String, String> getCaps() {
return caps;
}
@ -383,4 +387,12 @@ public class StoragePoolResponse extends BaseResponseWithAnnotations {
public void setTagARule(Boolean tagARule) {
isTagARule = tagARule;
}
public Boolean getManaged() {
return managed;
}
public void setManaged(Boolean managed) {
this.managed = managed;
}
}

View File

@ -171,6 +171,7 @@ public class StoragePoolJoinDaoImpl extends GenericDaoBase<StoragePoolJoinVO, Lo
poolResponse.setTags(pool.getTag());
poolResponse.setIsTagARule(pool.getIsTagARule());
poolResponse.setOverProvisionFactor(Double.toString(CapacityManager.StorageOverprovisioningFactor.valueIn(pool.getId())));
poolResponse.setManaged(storagePool.isManaged());
// set async job
if (pool.getJobId() != null) {
@ -203,6 +204,7 @@ public class StoragePoolJoinDaoImpl extends GenericDaoBase<StoragePoolJoinVO, Lo
@Override
public StoragePoolResponse newStoragePoolForMigrationResponse(StoragePoolJoinVO pool) {
StoragePool storagePool = storagePoolDao.findById(pool.getId());
StoragePoolResponse poolResponse = new StoragePoolResponse();
poolResponse.setId(pool.getUuid());
poolResponse.setName(pool.getName());
@ -229,6 +231,17 @@ public class StoragePoolJoinDaoImpl extends GenericDaoBase<StoragePoolJoinVO, Lo
poolResponse.setDiskSizeTotal(pool.getCapacityBytes());
poolResponse.setDiskSizeAllocated(allocatedSize);
poolResponse.setCapacityIops(pool.getCapacityIops());
if (storagePool != null) {
poolResponse.setManaged(storagePool.isManaged());
if (storagePool.isManaged()) {
DataStore store = dataStoreMgr.getDataStore(pool.getId(), DataStoreRole.Primary);
PrimaryDataStoreDriver driver = (PrimaryDataStoreDriver) store.getDriver();
long usedIops = driver.getUsedIops(storagePool);
poolResponse.setAllocatedIops(usedIops);
}
}
poolResponse.setOverProvisionFactor(Double.toString(CapacityManager.StorageOverprovisioningFactor.valueIn(pool.getId())));
// TODO: StatsCollector does not persist data