Repository: brooklyn-server
Updated Branches:
  refs/heads/master 3ad955999 -> d3cc05026


Fix NPE in forcePersistNow


Project: http://git-wip-us.apache.org/repos/asf/brooklyn-server/repo
Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-server/commit/8163d02b
Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-server/tree/8163d02b
Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-server/diff/8163d02b

Branch: refs/heads/master
Commit: 8163d02b02c48a3449891480c8f203fef606bb83
Parents: 9fb4193
Author: Andrew Donald Kennedy <[email protected]>
Authored: Wed Apr 20 10:00:50 2016 +0100
Committer: Andrew Donald Kennedy <[email protected]>
Committed: Wed Apr 20 11:31:37 2016 +0100

----------------------------------------------------------------------
 .../brooklyn/core/mgmt/rebind/RebindManagerImpl.java      | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/8163d02b/core/src/main/java/org/apache/brooklyn/core/mgmt/rebind/RebindManagerImpl.java
----------------------------------------------------------------------
diff --git 
a/core/src/main/java/org/apache/brooklyn/core/mgmt/rebind/RebindManagerImpl.java
 
b/core/src/main/java/org/apache/brooklyn/core/mgmt/rebind/RebindManagerImpl.java
index 5525981..48365d4 100644
--- 
a/core/src/main/java/org/apache/brooklyn/core/mgmt/rebind/RebindManagerImpl.java
+++ 
b/core/src/main/java/org/apache/brooklyn/core/mgmt/rebind/RebindManagerImpl.java
@@ -435,17 +435,23 @@ public class RebindManagerImpl implements RebindManager {
         persistenceRealChangeListener.waitForPendingComplete(timeout, 
canTrigger);
         persistenceStoreAccess.waitForWritesCompleted(timeout);
     }
+
     @Override
     @VisibleForTesting
     public void forcePersistNow() {
         forcePersistNow(false, null);
     }
+
     @Override
     @VisibleForTesting
     public void forcePersistNow(boolean full, PersistenceExceptionHandler 
exceptionHandler) {
+        if (persistenceStoreAccess == null || persistenceRealChangeListener == 
null) {
+            LOG.info("Skipping forced persist; no persistence mechanism 
available");
+            return;
+        }
         if (full) {
             BrooklynMementoRawData memento = 
BrooklynPersistenceUtils.newStateMemento(managementContext, 
MementoCopyMode.LOCAL);
-            if (exceptionHandler==null) {
+            if (exceptionHandler == null) {
                 exceptionHandler = 
persistenceRealChangeListener.getExceptionHandler();
             }
             persistenceStoreAccess.checkpoint(memento, exceptionHandler);
@@ -455,7 +461,7 @@ public class RebindManagerImpl implements RebindManager {
             }
         }
     }
-    
+
     @Override
     public ChangeListener getChangeListener() {
         return persistencePublicChangeListener;

Reply via email to