diff options
Diffstat (limited to 'qpid/java/broker-core/src/main/java/org/apache/qpid/server/store/JsonFileConfigStore.java')
-rw-r--r-- | qpid/java/broker-core/src/main/java/org/apache/qpid/server/store/JsonFileConfigStore.java | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/store/JsonFileConfigStore.java b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/store/JsonFileConfigStore.java index 819da86ca0..a5ace16cfa 100644 --- a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/store/JsonFileConfigStore.java +++ b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/store/JsonFileConfigStore.java @@ -31,6 +31,7 @@ import java.util.*; import org.apache.qpid.server.model.ConfiguredObject; import org.apache.qpid.server.model.Model; import org.apache.qpid.server.model.VirtualHost; +import org.apache.qpid.server.store.handler.ConfiguredObjectRecordHandler; import org.codehaus.jackson.JsonGenerator; import org.codehaus.jackson.JsonParseException; import org.codehaus.jackson.JsonProcessingException; @@ -97,22 +98,27 @@ public class JsonFileConfigStore implements DurableConfigurationStore } @Override - public void recoverConfigurationStore(ConfigurationRecoveryHandler recoveryHandler) + public void visitConfiguredObjectRecords(ConfiguredObjectRecordHandler handler) { - recoveryHandler.beginConfigurationRecovery(this,_configVersion); + handler.begin(_configVersion); List<ConfiguredObjectRecord> records = new ArrayList<ConfiguredObjectRecord>(_objectsById.values()); for(ConfiguredObjectRecord record : records) { - recoveryHandler.configuredObject(record); + boolean shouldContinue = handler.handle(record); + if (!shouldContinue) + { + break; + } } int oldConfigVersion = _configVersion; - _configVersion = recoveryHandler.completeConfigurationRecovery(); + _configVersion = handler.end(); if(oldConfigVersion != _configVersion) { save(); } } + private void setup(final Map<String, Object> configurationStoreSettings) { Object storePathAttr = configurationStoreSettings.get(DurableConfigurationStore.STORE_PATH); |