summaryrefslogtreecommitdiff
path: root/qpid/java
diff options
context:
space:
mode:
authorRobert Godfrey <rgodfrey@apache.org>2014-12-07 21:19:21 +0000
committerRobert Godfrey <rgodfrey@apache.org>2014-12-07 21:19:21 +0000
commitb1e8d83ef545719e5a39d50726d977b5f747a245 (patch)
tree799876ee60fbf4ea7d00ca0ba9f6453261315635 /qpid/java
parentdb07194fdec1c2c27d9de2fdc881e5d8e7b3ead9 (diff)
downloadqpid-python-b1e8d83ef545719e5a39d50726d977b5f747a245.tar.gz
QPID-6263 : [Java Broker] Move startup/recovery logic from server.Broker to SystemConfig
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1643719 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java')
-rw-r--r--qpid/java/broker-core/src/main/java/org/apache/qpid/server/Broker.java98
-rw-r--r--qpid/java/broker-core/src/main/java/org/apache/qpid/server/logging/EventLogger.java5
-rw-r--r--qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java7
-rw-r--r--qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractSystemConfig.java82
-rw-r--r--qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/SystemConfig.java5
-rw-r--r--qpid/java/broker-core/src/main/java/org/apache/qpid/server/store/BrokerStoreUpgraderAndRecoverer.java3
-rw-r--r--qpid/java/broker-core/src/test/java/org/apache/qpid/server/configuration/store/ManagementModeStoreHandlerTest.java34
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/Main.java13
-rw-r--r--qpid/java/systests/src/main/java/org/apache/qpid/test/utils/TestBrokerConfiguration.java22
9 files changed, 152 insertions, 117 deletions
diff --git a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/Broker.java b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/Broker.java
index 3b899e3dd3..e187b32694 100644
--- a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/Broker.java
+++ b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/Broker.java
@@ -33,11 +33,9 @@ import org.apache.log4j.LogManager;
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
-import org.apache.qpid.common.QpidProperties;
import org.apache.qpid.server.configuration.BrokerProperties;
import org.apache.qpid.server.configuration.updater.TaskExecutor;
import org.apache.qpid.server.configuration.updater.TaskExecutorImpl;
-import org.apache.qpid.server.logging.CompositeStartupMessageLogger;
import org.apache.qpid.server.logging.EventLogger;
import org.apache.qpid.server.logging.Log4jMessageLogger;
import org.apache.qpid.server.logging.LogRecorder;
@@ -46,14 +44,11 @@ import org.apache.qpid.server.logging.SystemOutMessageLogger;
import org.apache.qpid.server.logging.log4j.LoggingManagementFacade;
import org.apache.qpid.server.logging.messages.BrokerMessages;
import org.apache.qpid.server.model.BrokerShutdownProvider;
-import org.apache.qpid.server.model.State;
import org.apache.qpid.server.model.SystemConfig;
import org.apache.qpid.server.plugin.PluggableFactoryLoader;
import org.apache.qpid.server.plugin.SystemConfigFactory;
import org.apache.qpid.server.security.SecurityManager;
-import org.apache.qpid.server.store.BrokerStoreUpgraderAndRecoverer;
-import org.apache.qpid.server.store.DurableConfigurationStore;
-import org.apache.qpid.util.SystemUtils;
+import org.apache.qpid.server.util.Action;
public class Broker implements BrokerShutdownProvider
{
@@ -63,23 +58,20 @@ public class Broker implements BrokerShutdownProvider
private EventLogger _eventLogger;
private boolean _configuringOwnLogging = false;
private final TaskExecutor _taskExecutor = new TaskExecutorImpl();
- private final boolean _exitJVMOnShutdownWithNonZeroExitCode;
private SystemConfig _systemConfig;
- private org.apache.qpid.server.model.Broker _broker;
-
- private DurableConfigurationStore _store;
+ private final Action<Integer> _shutdownAction;
public Broker()
{
- this(false);
+ this(null);
}
- public Broker(boolean exitJVMOnShutdownWithNonZeroExitCode)
+ public Broker(Action<Integer> shutdownAction)
{
- this._exitJVMOnShutdownWithNonZeroExitCode = exitJVMOnShutdownWithNonZeroExitCode;
+ _shutdownAction = shutdownAction;
}
protected static class InitException extends RuntimeException
@@ -108,22 +100,10 @@ public class Broker implements BrokerShutdownProvider
{
try
{
- try
- {
- if (_broker != null)
- {
- _broker.close();
- }
- }
- finally
+ if(_systemConfig != null)
{
- if(_systemConfig != null)
- {
- _systemConfig.close();
- }
+ _systemConfig.close();
}
- _store = null;
- _broker = null;
_taskExecutor.stop();
}
@@ -134,9 +114,9 @@ public class Broker implements BrokerShutdownProvider
LogManager.shutdown();
}
- if (_exitJVMOnShutdownWithNonZeroExitCode && exitStatusCode != 0)
+ if (_shutdownAction != null)
{
- System.exit(exitStatusCode);
+ _shutdownAction.performAction(exitStatusCode);
}
}
}
@@ -178,6 +158,10 @@ public class Broker implements BrokerShutdownProvider
{
configureLogging(new File(options.getLogConfigFileLocation()), options.getLogWatchFrequency());
}
+ // Create the RootLogger to be used during broker operation
+ boolean statusUpdatesEnabled = Boolean.parseBoolean(System.getProperty(BrokerProperties.PROPERTY_STATUS_UPDATES, "true"));
+ MessageLogger messageLogger = new Log4jMessageLogger(statusUpdatesEnabled);
+ _eventLogger.setMessageLogger(messageLogger);
PluggableFactoryLoader<SystemConfigFactory> configFactoryLoader = new PluggableFactoryLoader<>(SystemConfigFactory.class);
@@ -194,66 +178,16 @@ public class Broker implements BrokerShutdownProvider
_taskExecutor.start();
_systemConfig = configFactory.newInstance(_taskExecutor, _eventLogger, logRecorder, options.convertToSystemConfigAttributes(), this);
- _systemConfig.open();
- _store = _systemConfig.getConfigurationStore();
-
try
{
- // Create the RootLogger to be used during broker operation
- boolean statusUpdatesEnabled = Boolean.parseBoolean(System.getProperty(BrokerProperties.PROPERTY_STATUS_UPDATES, "true"));
- MessageLogger messageLogger = new Log4jMessageLogger(statusUpdatesEnabled);
- final EventLogger eventLogger = _systemConfig.getEventLogger();
- eventLogger.setMessageLogger(messageLogger);
-
- //Create the composite (log4j+SystemOut MessageLogger to be used during startup
- MessageLogger[] messageLoggers = {new SystemOutMessageLogger(), messageLogger};
-
- CompositeStartupMessageLogger startupMessageLogger = new CompositeStartupMessageLogger(messageLoggers);
- EventLogger startupLogger = new EventLogger(startupMessageLogger);
-
- startupLogger.message(BrokerMessages.STARTUP(QpidProperties.getReleaseVersion(),
- QpidProperties.getBuildVersion()));
-
- startupLogger.message(BrokerMessages.PLATFORM(System.getProperty("java.vendor"),
- System.getProperty("java.runtime.version",
- System.getProperty("java.version")),
- SystemUtils.getOSName(),
- SystemUtils.getOSVersion(),
- SystemUtils.getOSArch()));
-
- startupLogger.message(BrokerMessages.MAX_MEMORY(Runtime.getRuntime().maxMemory()));
-
- BrokerStoreUpgraderAndRecoverer upgrader = new BrokerStoreUpgraderAndRecoverer(_systemConfig);
- org.apache.qpid.server.model.Broker broker = upgrader.perform(_store);
- _broker = broker;
-
- broker.setEventLogger(startupLogger);
- broker.open();
-
- if (broker.getState() == State.ACTIVE)
- {
- startupLogger.message(BrokerMessages.READY());
- broker.setEventLogger(eventLogger);
- }
+ _systemConfig.open();
}
- catch(Exception e)
+ catch(RuntimeException e)
{
LOGGER.fatal("Exception during startup", e);
try
{
- try
- {
- if (_broker != null)
- {
- _broker.close();
- }
- }
- finally
- {
- _systemConfig.close();
- }
- _store = null;
- _broker = null;
+ _systemConfig.close();
}
catch(Exception ce)
{
diff --git a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/logging/EventLogger.java b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/logging/EventLogger.java
index 70d1db794e..ed97e14ab4 100644
--- a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/logging/EventLogger.java
+++ b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/logging/EventLogger.java
@@ -59,4 +59,9 @@ public class EventLogger
{
_messageLogger = messageLogger;
}
+
+ public MessageLogger getMessageLogger()
+ {
+ return _messageLogger;
+ }
}
diff --git a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java
index a2f4f4ee0a..b9a4b32acb 100644
--- a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java
+++ b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java
@@ -556,9 +556,14 @@ public abstract class AbstractConfiguredObject<X extends ConfiguredObject<X>> im
{
}
+ protected boolean rethrowRuntimeExceptionsOnOpen()
+ {
+ return false;
+ }
+
protected final void handleExceptionOnOpen(RuntimeException e)
{
- if (e instanceof ServerScopedRuntimeException)
+ if (rethrowRuntimeExceptionsOnOpen() || e instanceof ServerScopedRuntimeException)
{
throw e;
}
diff --git a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractSystemConfig.java b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractSystemConfig.java
index 5dfb178f15..19918abb14 100644
--- a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractSystemConfig.java
+++ b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/AbstractSystemConfig.java
@@ -31,15 +31,21 @@ import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
+import org.apache.qpid.common.QpidProperties;
import org.apache.qpid.server.configuration.IllegalConfigurationException;
import org.apache.qpid.server.configuration.store.ManagementModeStoreHandler;
import org.apache.qpid.server.configuration.updater.TaskExecutor;
+import org.apache.qpid.server.logging.CompositeStartupMessageLogger;
import org.apache.qpid.server.logging.EventLogger;
import org.apache.qpid.server.logging.LogRecorder;
+import org.apache.qpid.server.logging.MessageLogger;
+import org.apache.qpid.server.logging.SystemOutMessageLogger;
import org.apache.qpid.server.logging.messages.BrokerMessages;
+import org.apache.qpid.server.store.BrokerStoreUpgraderAndRecoverer;
import org.apache.qpid.server.store.ConfiguredObjectRecord;
import org.apache.qpid.server.store.ConfiguredObjectRecordConverter;
import org.apache.qpid.server.store.DurableConfigurationStore;
+import org.apache.qpid.util.SystemUtils;
public abstract class AbstractSystemConfig<X extends SystemConfig<X>>
extends AbstractConfiguredObject<X> implements SystemConfig<X>
@@ -72,6 +78,9 @@ public abstract class AbstractSystemConfig<X extends SystemConfig<X>>
@ManagedAttributeField
private String _initialConfigurationLocation;
+ @ManagedAttributeField
+ private boolean _startupLoggedToSystemOut;
+
public AbstractSystemConfig(final TaskExecutor taskExecutor,
final EventLogger eventLogger,
@@ -103,12 +112,6 @@ public abstract class AbstractSystemConfig<X extends SystemConfig<X>>
}
@Override
- public State getState()
- {
- return State.ACTIVE;
- }
-
- @Override
public EventLogger getEventLogger()
{
return _eventLogger;
@@ -176,9 +179,9 @@ public abstract class AbstractSystemConfig<X extends SystemConfig<X>>
try
{
_configurationStore.openConfigurationStore(this,
- false,
- convertToConfigurationRecords(getInitialConfigurationLocation(),
- this));
+ false,
+ convertToConfigurationRecords(getInitialConfigurationLocation(),
+ this));
_configurationStore.upgradeStoreStructure();
}
catch (IOException e)
@@ -186,6 +189,61 @@ public abstract class AbstractSystemConfig<X extends SystemConfig<X>>
throw new IllegalArgumentException(e);
}
+
+
+ }
+
+ @StateTransition(currentState = State.UNINITIALIZED, desiredState = State.ACTIVE)
+ protected void activate()
+ {
+ final EventLogger eventLogger = _eventLogger;
+
+ EventLogger startupLogger;
+ if (isStartupLoggedToSystemOut())
+ {
+ //Create the composite (logging+SystemOut MessageLogger to be used during startup
+ MessageLogger[] messageLoggers = {new SystemOutMessageLogger(), eventLogger.getMessageLogger()};
+
+ CompositeStartupMessageLogger startupMessageLogger = new CompositeStartupMessageLogger(messageLoggers);
+ startupLogger = new EventLogger(startupMessageLogger);
+ }
+ else
+ {
+ startupLogger = eventLogger;
+ }
+
+ startupLogger.message(BrokerMessages.STARTUP(QpidProperties.getReleaseVersion(),
+ QpidProperties.getBuildVersion()));
+
+ startupLogger.message(BrokerMessages.PLATFORM(System.getProperty("java.vendor"),
+ System.getProperty("java.runtime.version",
+ System.getProperty("java.version")),
+ SystemUtils.getOSName(),
+ SystemUtils.getOSVersion(),
+ SystemUtils.getOSArch()));
+
+ startupLogger.message(BrokerMessages.MAX_MEMORY(Runtime.getRuntime().maxMemory()));
+
+ BrokerStoreUpgraderAndRecoverer upgrader = new BrokerStoreUpgraderAndRecoverer(this);
+ upgrader.perform();
+
+ Broker broker = getBroker();
+
+ broker.setEventLogger(startupLogger);
+ broker.open();
+
+ if (broker.getState() == State.ACTIVE)
+ {
+ startupLogger.message(BrokerMessages.READY());
+ broker.setEventLogger(eventLogger);
+ }
+
+ }
+
+ @Override
+ protected final boolean rethrowRuntimeExceptionsOnOpen()
+ {
+ return true;
}
abstract protected DurableConfigurationStore createStoreObject();
@@ -275,4 +333,10 @@ public abstract class AbstractSystemConfig<X extends SystemConfig<X>>
{
return _brokerShutdownProvider;
}
+
+ @Override
+ public boolean isStartupLoggedToSystemOut()
+ {
+ return _startupLoggedToSystemOut;
+ }
}
diff --git a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/SystemConfig.java b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/SystemConfig.java
index c985541a53..a69808180d 100644
--- a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/SystemConfig.java
+++ b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/SystemConfig.java
@@ -35,7 +35,8 @@ public interface SystemConfig<X extends SystemConfig<X>> extends ConfiguredObjec
String MANAGEMENT_MODE_HTTP_PORT_OVERRIDE = "managementModeHttpPortOverride";
String MANAGEMENT_MODE_PASSWORD = "managementModePassword";
String INITIAL_CONFIGURATION_LOCATION = "initialConfigurationLocation";
-
+ String STARTUP_LOGGED_TO_SYSTEM_OUT = "startupLoggedToSystemOut";
+
@ManagedAttribute(defaultValue = "false")
boolean isManagementMode();
@@ -57,6 +58,8 @@ public interface SystemConfig<X extends SystemConfig<X>> extends ConfiguredObjec
@ManagedAttribute
String getInitialConfigurationLocation();
+ @ManagedAttribute(defaultValue = "true")
+ boolean isStartupLoggedToSystemOut();
EventLogger getEventLogger();
diff --git a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/store/BrokerStoreUpgraderAndRecoverer.java b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/store/BrokerStoreUpgraderAndRecoverer.java
index 2be2bbbf28..a2d8d21d58 100644
--- a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/store/BrokerStoreUpgraderAndRecoverer.java
+++ b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/store/BrokerStoreUpgraderAndRecoverer.java
@@ -604,8 +604,9 @@ public class BrokerStoreUpgraderAndRecoverer
return brokerRecord;
}
- public Broker<?> perform(final DurableConfigurationStore store)
+ public Broker<?> perform()
{
+ final DurableConfigurationStore store = _systemConfig.getConfigurationStore();
List<ConfiguredObjectRecord> upgradedRecords = upgrade(store);
new GenericRecoverer(_systemConfig).recover(upgradedRecords);
diff --git a/qpid/java/broker-core/src/test/java/org/apache/qpid/server/configuration/store/ManagementModeStoreHandlerTest.java b/qpid/java/broker-core/src/test/java/org/apache/qpid/server/configuration/store/ManagementModeStoreHandlerTest.java
index 57672dc4f7..0dee5821b2 100644
--- a/qpid/java/broker-core/src/test/java/org/apache/qpid/server/configuration/store/ManagementModeStoreHandlerTest.java
+++ b/qpid/java/broker-core/src/test/java/org/apache/qpid/server/configuration/store/ManagementModeStoreHandlerTest.java
@@ -44,8 +44,10 @@ import org.apache.qpid.server.configuration.updater.CurrentThreadTaskExecutor;
import org.apache.qpid.server.configuration.updater.TaskExecutor;
import org.apache.qpid.server.logging.EventLogger;
import org.apache.qpid.server.logging.LogRecorder;
+import org.apache.qpid.server.model.AbstractSystemConfig;
import org.apache.qpid.server.model.Broker;
import org.apache.qpid.server.model.BrokerShutdownProvider;
+import org.apache.qpid.server.model.ConfiguredObject;
import org.apache.qpid.server.model.JsonSystemConfigImpl;
import org.apache.qpid.server.model.Port;
import org.apache.qpid.server.model.Protocol;
@@ -87,7 +89,8 @@ public class ManagementModeStoreHandlerTest extends QpidTestCase
- _root = new ConfiguredObjectRecordImpl(_rootId, Broker.class.getSimpleName(), Collections.<String,Object>emptyMap(), Collections.singletonMap(SystemConfig.class.getSimpleName(), systemContextRecord.getId()));
+ _root = new ConfiguredObjectRecordImpl(_rootId, Broker.class.getSimpleName(), Collections.singletonMap(Broker.NAME,
+ (Object) "broker"), Collections.singletonMap(SystemConfig.class.getSimpleName(), systemContextRecord.getId()));
_portEntry = mock(ConfiguredObjectRecord.class);
when(_portEntry.getId()).thenReturn(_portEntryId);
@@ -120,11 +123,30 @@ public class ManagementModeStoreHandlerTest extends QpidTestCase
private ManagementModeStoreHandler createManagementModeStoreHandler()
{
_systemConfig.close();
- _systemConfig = new JsonSystemConfigImpl(_taskExecutor,
- mock(EventLogger.class),
- mock(LogRecorder.class),
- _options.convertToSystemConfigAttributes(),
- mock(BrokerShutdownProvider.class));
+ Map<String, Object> attributes = new HashMap<>(_options.convertToSystemConfigAttributes());
+ attributes.put(ConfiguredObject.DESIRED_STATE, State.QUIESCED);
+ _systemConfig = new AbstractSystemConfig(_taskExecutor,
+ mock(EventLogger.class),
+ mock(LogRecorder.class),
+ attributes,
+ mock(BrokerShutdownProvider.class))
+ {
+ @Override
+ protected void onOpen()
+ {
+ }
+
+ @Override
+ protected DurableConfigurationStore createStoreObject()
+ {
+ return _store;
+ }
+
+ @Override
+ protected void onClose()
+ {
+ }
+ };
_systemConfig.open();
return new ManagementModeStoreHandler(_store, _systemConfig);
}
diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/Main.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/Main.java
index 76f8485884..f4c6926a17 100644
--- a/qpid/java/broker/src/main/java/org/apache/qpid/server/Main.java
+++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/Main.java
@@ -41,6 +41,7 @@ import org.apache.log4j.Logger;
import org.apache.qpid.common.QpidProperties;
import org.apache.qpid.framing.ProtocolVersion;
import org.apache.qpid.server.configuration.IllegalConfigurationException;
+import org.apache.qpid.server.util.Action;
import org.apache.qpid.util.FileUtils;
/**
@@ -454,7 +455,17 @@ public class Main
protected void startBroker(final BrokerOptions options) throws Exception
{
- Broker broker = new Broker(true);
+ Broker broker = new Broker(new Action<Integer>()
+ {
+ @Override
+ public void performAction(final Integer exitStatusCode)
+ {
+ if (exitStatusCode != 0)
+ {
+ shutdown(exitStatusCode);
+ }
+ }
+ });
broker.startup(options);
}
diff --git a/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/TestBrokerConfiguration.java b/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/TestBrokerConfiguration.java
index 3d0fb90036..549edcd650 100644
--- a/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/TestBrokerConfiguration.java
+++ b/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/TestBrokerConfiguration.java
@@ -44,21 +44,7 @@ import org.apache.qpid.server.BrokerOptions;
import org.apache.qpid.server.configuration.updater.TaskExecutor;
import org.apache.qpid.server.logging.EventLogger;
import org.apache.qpid.server.logging.LogRecorder;
-import org.apache.qpid.server.model.AbstractSystemConfig;
-import org.apache.qpid.server.model.AccessControlProvider;
-import org.apache.qpid.server.model.AuthenticationProvider;
-import org.apache.qpid.server.model.Broker;
-import org.apache.qpid.server.model.BrokerModel;
-import org.apache.qpid.server.model.BrokerShutdownProvider;
-import org.apache.qpid.server.model.ConfiguredObject;
-import org.apache.qpid.server.model.GroupProvider;
-import org.apache.qpid.server.model.JsonSystemConfigImpl;
-import org.apache.qpid.server.model.Plugin;
-import org.apache.qpid.server.model.PreferencesProvider;
-import org.apache.qpid.server.model.SystemConfig;
-import org.apache.qpid.server.model.UUIDGenerator;
-import org.apache.qpid.server.model.VirtualHostAlias;
-import org.apache.qpid.server.model.VirtualHostNode;
+import org.apache.qpid.server.model.*;
import org.apache.qpid.server.model.adapter.FileBasedGroupProvider;
import org.apache.qpid.server.model.adapter.FileBasedGroupProviderImpl;
import org.apache.qpid.server.plugin.PluggableFactoryLoader;
@@ -216,10 +202,13 @@ public class TestBrokerConfiguration
SystemConfigFactory configFactory =
(new PluggableFactoryLoader<>(SystemConfigFactory.class)).get(_storeType);
+ Map<String, Object> attributes = new HashMap<>(brokerOptions.convertToSystemConfigAttributes());
+ attributes.put(SystemConfig.STARTUP_LOGGED_TO_SYSTEM_OUT, false);
+ attributes.put(ConfiguredObject.DESIRED_STATE, State.QUIESCED);
final SystemConfig parentObject = configFactory.newInstance(_taskExecutor,
mock(EventLogger.class),
mock(LogRecorder.class),
- brokerOptions.convertToSystemConfigAttributes(),
+ attributes,
mock(BrokerShutdownProvider.class));
parentObject.open();
@@ -252,6 +241,7 @@ public class TestBrokerConfiguration
configurationStore.openConfigurationStore(parentObject,true,initialRecords.toArray(new ConfiguredObjectRecord[initialRecords.size()]));
configurationStore.closeConfigurationStore();
+ parentObject.close();
return true;
}