diff --git a/engine/schema/src/org/apache/cloudstack/storage/datastore/db/StoragePoolVO.java b/engine/schema/src/org/apache/cloudstack/storage/datastore/db/StoragePoolVO.java index 941b952baaa..557c96456ab 100644 --- a/engine/schema/src/org/apache/cloudstack/storage/datastore/db/StoragePoolVO.java +++ b/engine/schema/src/org/apache/cloudstack/storage/datastore/db/StoragePoolVO.java @@ -340,7 +340,6 @@ public class StoragePoolVO implements StoragePool { @Override public boolean isInMaintenance() { - // TODO Auto-generated method stub - return false; + return status == StoragePoolStatus.PrepareForMaintenance || status == StoragePoolStatus.Maintenance || status == StoragePoolStatus.ErrorInMaintenance || removed != null; } } diff --git a/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/PrimaryDataStoreImpl.java b/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/PrimaryDataStoreImpl.java index e02d9bc83f1..7c8f49a9c9b 100644 --- a/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/PrimaryDataStoreImpl.java +++ b/engine/storage/volume/src/org/apache/cloudstack/storage/datastore/PrimaryDataStoreImpl.java @@ -358,9 +358,13 @@ public class PrimaryDataStoreImpl implements PrimaryDataStore { return this.pdsv.getPodId(); } + public Date getRemoved() { + return this.pdsv.getRemoved(); + } + @Override public boolean isInMaintenance() { - return this.getStatus() == StoragePoolStatus.Maintenance ? true : false; + return this.getStatus() == StoragePoolStatus.PrepareForMaintenance || this.getStatus() == StoragePoolStatus.Maintenance || this.getStatus() == StoragePoolStatus.ErrorInMaintenance || this.getRemoved() != null; } @Override