From 654c90f4e5432e3837a12e7c5edf7dec425cbab1 Mon Sep 17 00:00:00 2001 From: Nitin Mehta Date: Thu, 5 Sep 2013 12:41:05 +0530 Subject: [PATCH] CLOUDSTACK-4327: Check for the all the transition states for Maintenance. Also corrected the isMaintenance function for StoragePoolVo Signed off by : nitin mehta --- .../cloudstack/storage/datastore/db/StoragePoolVO.java | 3 +-- .../cloudstack/storage/datastore/PrimaryDataStoreImpl.java | 6 +++++- 2 files changed, 6 insertions(+), 3 deletions(-) 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