diff options
| author | Robert Godfrey <rgodfrey@apache.org> | 2014-12-07 10:54:59 +0000 |
|---|---|---|
| committer | Robert Godfrey <rgodfrey@apache.org> | 2014-12-07 10:54:59 +0000 |
| commit | db07194fdec1c2c27d9de2fdc881e5d8e7b3ead9 (patch) | |
| tree | c642b1d91278214f45eb31eec981eb6678451e9f /qpid/java | |
| parent | 29ae1eaabfa2d46c3f0728d6b3f9477661f9abd4 (diff) | |
| download | qpid-python-db07194fdec1c2c27d9de2fdc881e5d8e7b3ead9.tar.gz | |
QPID-6263 : [Java Broker] Remove knowledge of BrokerOptions from SystemConfig and simply use attributes instead
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1643660 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java')
17 files changed, 197 insertions, 83 deletions
diff --git a/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/BDBSystemConfigImpl.java b/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/BDBSystemConfigImpl.java index 5d65d6e16d..90bb4b74ee 100644 --- a/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/BDBSystemConfigImpl.java +++ b/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/BDBSystemConfigImpl.java @@ -20,7 +20,8 @@ */ package org.apache.qpid.server.store.berkeleydb; -import org.apache.qpid.server.BrokerOptions; +import java.util.Map; + import org.apache.qpid.server.configuration.updater.TaskExecutor; import org.apache.qpid.server.logging.EventLogger; import org.apache.qpid.server.logging.LogRecorder; @@ -49,10 +50,10 @@ public class BDBSystemConfigImpl extends AbstractSystemConfig<BDBSystemConfigImp public BDBSystemConfigImpl(final TaskExecutor taskExecutor, final EventLogger eventLogger, final LogRecorder logRecorder, - final BrokerOptions brokerOptions, + final Map<String,Object> attributes, final BrokerShutdownProvider brokerShutdownProvider) { - super(taskExecutor, eventLogger, logRecorder, brokerOptions, brokerShutdownProvider); + super(taskExecutor, eventLogger, logRecorder, attributes, brokerShutdownProvider); } @Override diff --git a/qpid/java/broker-codegen/src/main/java/org/apache/qpid/server/model/SystemConfigFactoryGenerator.java b/qpid/java/broker-codegen/src/main/java/org/apache/qpid/server/model/SystemConfigFactoryGenerator.java index 317e0f7c74..52c1276d49 100644 --- a/qpid/java/broker-codegen/src/main/java/org/apache/qpid/server/model/SystemConfigFactoryGenerator.java +++ b/qpid/java/broker-codegen/src/main/java/org/apache/qpid/server/model/SystemConfigFactoryGenerator.java @@ -113,7 +113,8 @@ public class SystemConfigFactoryGenerator extends AbstractProcessor pw.println(";"); pw.println(); - pw.println("import org.apache.qpid.server.BrokerOptions;"); + pw.println("import java.util.Map;"); + pw.println(); pw.println("import org.apache.qpid.server.configuration.updater.TaskExecutor;"); pw.println("import org.apache.qpid.server.logging.EventLogger;"); pw.println("import org.apache.qpid.server.logging.LogRecorder;"); @@ -140,10 +141,10 @@ public class SystemConfigFactoryGenerator extends AbstractProcessor pw.println(" public "+objectSimpleName+" newInstance(final TaskExecutor taskExecutor,"); pw.println(" final EventLogger eventLogger,"); pw.println(" final LogRecorder logRecorder,"); - pw.println(" final BrokerOptions brokerOptions,"); + pw.println(" final Map<String,Object> attributes,"); pw.println(" final BrokerShutdownProvider brokerShutdownProvider)"); pw.println(" {"); - pw.println(" return new "+objectSimpleName+"(taskExecutor, eventLogger, logRecorder, brokerOptions, brokerShutdownProvider);"); + pw.println(" return new "+objectSimpleName+"(taskExecutor, eventLogger, logRecorder, attributes, brokerShutdownProvider);"); pw.println(" }"); pw.println("}"); 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 a5a84b019d..3b899e3dd3 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 @@ -193,7 +193,7 @@ public class Broker implements BrokerShutdownProvider LogRecorder logRecorder = new LogRecorder(); _taskExecutor.start(); - _systemConfig = configFactory.newInstance(_taskExecutor, _eventLogger, logRecorder, options, this); + _systemConfig = configFactory.newInstance(_taskExecutor, _eventLogger, logRecorder, options.convertToSystemConfigAttributes(), this); _systemConfig.open(); _store = _systemConfig.getConfigurationStore(); diff --git a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/BrokerOptions.java b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/BrokerOptions.java index 9b3f290723..ebb113d43b 100644 --- a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/BrokerOptions.java +++ b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/BrokerOptions.java @@ -29,6 +29,7 @@ import java.util.concurrent.ConcurrentMap; import org.apache.qpid.server.configuration.BrokerProperties; import org.apache.qpid.server.model.ConfiguredObject; +import org.apache.qpid.server.model.SystemConfig; import org.apache.qpid.server.util.StringUtil; public class BrokerOptions @@ -80,12 +81,21 @@ public class BrokerOptions private Map<String, String> _configProperties = new HashMap<String,String>(); private String _initialSystemProperties; - public Map<String, Object> convertToSystemAttributes() + public Map<String, Object> convertToSystemConfigAttributes() { Map<String,Object> attributes = new HashMap<String, Object>(); attributes.put("storePath", getConfigurationStoreLocation()); attributes.put(ConfiguredObject.CONTEXT, getConfigProperties()); + + attributes.put(SystemConfig.MANAGEMENT_MODE, _managementMode); + attributes.put(SystemConfig.MANAGEMENT_MODE_QUIESCE_VIRTUAL_HOSTS, _managementModeQuiesceVhosts); + attributes.put(SystemConfig.MANAGEMENT_MODE_RMI_PORT_OVERRIDE, _managementModeRmiPortOverride); + attributes.put(SystemConfig.MANAGEMENT_MODE_JMX_PORT_OVERRIDE, _managementModeJmxPortOverride); + attributes.put(SystemConfig.MANAGEMENT_MODE_HTTP_PORT_OVERRIDE, _managementModeHttpPortOverride); + attributes.put(SystemConfig.MANAGEMENT_MODE_PASSWORD, _managementModePassword); + attributes.put(SystemConfig.INITIAL_CONFIGURATION_LOCATION, getInitialConfigurationLocation()); + return attributes; } diff --git a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/configuration/store/ManagementModeStoreHandler.java b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/configuration/store/ManagementModeStoreHandler.java index 4032ae2f39..bf45268a5e 100644 --- a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/configuration/store/ManagementModeStoreHandler.java +++ b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/configuration/store/ManagementModeStoreHandler.java @@ -30,7 +30,6 @@ import java.util.UUID; import org.apache.log4j.Logger; -import org.apache.qpid.server.BrokerOptions; import org.apache.qpid.server.configuration.IllegalConfigurationException; import org.apache.qpid.server.model.Broker; import org.apache.qpid.server.model.ConfiguredObject; @@ -40,6 +39,7 @@ import org.apache.qpid.server.model.Model; import org.apache.qpid.server.model.Port; import org.apache.qpid.server.model.Protocol; import org.apache.qpid.server.model.State; +import org.apache.qpid.server.model.SystemConfig; import org.apache.qpid.server.model.VirtualHost; import org.apache.qpid.server.model.adapter.BrokerAdapter; import org.apache.qpid.server.store.ConfiguredObjectRecord; @@ -62,14 +62,14 @@ public class ManagementModeStoreHandler implements DurableConfigurationStore private final DurableConfigurationStore _store; private Map<UUID, ConfiguredObjectRecord> _cliEntries; private Map<UUID, Object> _quiescedEntriesOriginalState; - private final BrokerOptions _options; + private final SystemConfig<?> _systemConfig; private ConfiguredObject<?> _parent; private HashMap<UUID, ConfiguredObjectRecord> _records; public ManagementModeStoreHandler(DurableConfigurationStore store, - BrokerOptions options) + SystemConfig<?> systemConfig) { - _options = options; + _systemConfig = systemConfig; _store = store; } @@ -82,16 +82,16 @@ public class ManagementModeStoreHandler implements DurableConfigurationStore _parent = parent; _store.openConfigurationStore(parent, overwrite, initialRecords); - _quiescedEntriesOriginalState = quiesceEntries(_options); + _quiescedEntriesOriginalState = quiesceEntries(_systemConfig); _records = new HashMap<UUID, ConfiguredObjectRecord>(); final ConfiguredObjectRecordHandler localRecoveryHandler = new ConfiguredObjectRecordHandler() { private int _version; - private boolean _quiesceRmiPort = _options.getManagementModeRmiPortOverride() > 0; - private boolean _quiesceJmxPort = _options.getManagementModeJmxPortOverride() > 0; - private boolean _quiesceHttpPort = _options.getManagementModeHttpPortOverride() > 0; + private boolean _quiesceRmiPort = _systemConfig.getManagementModeRmiPortOverride() > 0; + private boolean _quiesceJmxPort = _systemConfig.getManagementModeJmxPortOverride() > 0; + private boolean _quiesceHttpPort = _systemConfig.getManagementModeHttpPortOverride() > 0; @Override public void begin() @@ -104,7 +104,7 @@ public class ManagementModeStoreHandler implements DurableConfigurationStore String entryType = object.getType(); Map<String, Object> attributes = object.getAttributes(); boolean quiesce = false; - if (VIRTUAL_HOST_TYPE.equals(entryType) && _options.isManagementModeQuiesceVirtualHosts()) + if (VIRTUAL_HOST_TYPE.equals(entryType) && _systemConfig.isManagementModeQuiesceVirtualHosts()) { quiesce = true; } @@ -174,7 +174,7 @@ public class ManagementModeStoreHandler implements DurableConfigurationStore _store.visitConfiguredObjectRecords(localRecoveryHandler); - _cliEntries = createPortsFromCommandLineOptions(_options); + _cliEntries = createPortsFromCommandLineOptions(_systemConfig); for(ConfiguredObjectRecord entry : _cliEntries.values()) { @@ -293,7 +293,7 @@ public class ManagementModeStoreHandler implements DurableConfigurationStore } } - private Map<UUID, ConfiguredObjectRecord> createPortsFromCommandLineOptions(BrokerOptions options) + private Map<UUID, ConfiguredObjectRecord> createPortsFromCommandLineOptions(SystemConfig<?> options) { int managementModeRmiPortOverride = options.getManagementModeRmiPortOverride(); if (managementModeRmiPortOverride < 0) @@ -369,7 +369,7 @@ public class ManagementModeStoreHandler implements DurableConfigurationStore } - private Map<UUID, Object> quiesceEntries(final BrokerOptions options) + private Map<UUID, Object> quiesceEntries(final SystemConfig<?> options) { final Map<UUID, Object> quiescedEntries = new HashMap<UUID, Object>(); final int managementModeRmiPortOverride = options.getManagementModeRmiPortOverride(); 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 f8dac7cbe9..5dfb178f15 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,7 +31,6 @@ import java.util.HashMap; import java.util.Map; import java.util.UUID; -import org.apache.qpid.server.BrokerOptions; import org.apache.qpid.server.configuration.IllegalConfigurationException; import org.apache.qpid.server.configuration.store.ManagementModeStoreHandler; import org.apache.qpid.server.configuration.updater.TaskExecutor; @@ -48,24 +47,44 @@ public abstract class AbstractSystemConfig<X extends SystemConfig<X>> private static final UUID SYSTEM_ID = new UUID(0l, 0l); private final EventLogger _eventLogger; private final LogRecorder _logRecorder; - private final BrokerOptions _brokerOptions; private final BrokerShutdownProvider _brokerShutdownProvider; private DurableConfigurationStore _configurationStore; + @ManagedAttributeField + private boolean _managementMode; + + @ManagedAttributeField + private int _managementModeRmiPortOverride; + + @ManagedAttributeField + private int _managementModeJmxPortOverride; + + @ManagedAttributeField + private int _managementModeHttpPortOverride; + + @ManagedAttributeField + private boolean _managementModeQuiesceVirtualHosts; + + @ManagedAttributeField + private String _managementModePassword; + + @ManagedAttributeField + private String _initialConfigurationLocation; + + public AbstractSystemConfig(final TaskExecutor taskExecutor, final EventLogger eventLogger, final LogRecorder logRecorder, - final BrokerOptions brokerOptions, + final Map<String,Object> attributes, final BrokerShutdownProvider brokerShutdownProvider) { super(parentsMap(), - updateAttributes(brokerOptions.convertToSystemAttributes()), + updateAttributes(attributes), taskExecutor, BrokerModel.getInstance()); _eventLogger = eventLogger; getTaskExecutor().start(); _logRecorder = logRecorder; - _brokerOptions = brokerOptions; _brokerShutdownProvider = brokerShutdownProvider; } @@ -101,12 +120,6 @@ public abstract class AbstractSystemConfig<X extends SystemConfig<X>> } @Override - public BrokerOptions getBrokerOptions() - { - return _brokerOptions; - } - - @Override protected void onClose() { try @@ -155,16 +168,16 @@ public abstract class AbstractSystemConfig<X extends SystemConfig<X>> super.onOpen(); _configurationStore = createStoreObject(); - if (_brokerOptions.isManagementMode()) + if (isManagementMode()) { - _configurationStore = new ManagementModeStoreHandler(_configurationStore, _brokerOptions); + _configurationStore = new ManagementModeStoreHandler(_configurationStore, this); } try { _configurationStore.openConfigurationStore(this, false, - convertToConfigurationRecords(_brokerOptions.getInitialConfigurationLocation(), + convertToConfigurationRecords(getInitialConfigurationLocation(), this)); _configurationStore.upgradeStoreStructure(); } @@ -216,6 +229,48 @@ public abstract class AbstractSystemConfig<X extends SystemConfig<X>> } @Override + public boolean isManagementMode() + { + return _managementMode; + } + + @Override + public int getManagementModeRmiPortOverride() + { + return _managementModeRmiPortOverride; + } + + @Override + public int getManagementModeJmxPortOverride() + { + return _managementModeJmxPortOverride; + } + + @Override + public int getManagementModeHttpPortOverride() + { + return _managementModeHttpPortOverride; + } + + @Override + public boolean isManagementModeQuiesceVirtualHosts() + { + return _managementModeQuiesceVirtualHosts; + } + + @Override + public String getManagementModePassword() + { + return _managementModePassword; + } + + @Override + public String getInitialConfigurationLocation() + { + return _initialConfigurationLocation; + } + + @Override public BrokerShutdownProvider getBrokerShutdownProvider() { return _brokerShutdownProvider; diff --git a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/JsonSystemConfigImpl.java b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/JsonSystemConfigImpl.java index c9a828e7e4..440c7e341c 100644 --- a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/JsonSystemConfigImpl.java +++ b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/JsonSystemConfigImpl.java @@ -20,7 +20,8 @@ */ package org.apache.qpid.server.model; -import org.apache.qpid.server.BrokerOptions; +import java.util.Map; + import org.apache.qpid.server.configuration.updater.TaskExecutor; import org.apache.qpid.server.logging.EventLogger; import org.apache.qpid.server.logging.LogRecorder; @@ -38,10 +39,10 @@ public class JsonSystemConfigImpl extends AbstractSystemConfig<JsonSystemConfigI public JsonSystemConfigImpl(final TaskExecutor taskExecutor, final EventLogger eventLogger, final LogRecorder logRecorder, - final BrokerOptions brokerOptions, + final Map<String,Object> attributes, final BrokerShutdownProvider brokerShutdownProvider) { - super(taskExecutor, eventLogger, logRecorder, brokerOptions, brokerShutdownProvider); + super(taskExecutor, eventLogger, logRecorder, attributes, brokerShutdownProvider); } public String getStorePath() 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 ec063142b4..c985541a53 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 @@ -20,7 +20,6 @@ */ package org.apache.qpid.server.model; -import org.apache.qpid.server.BrokerOptions; import org.apache.qpid.server.logging.EventLogger; import org.apache.qpid.server.logging.LogRecorder; import org.apache.qpid.server.store.DurableConfigurationStore; @@ -28,9 +27,38 @@ import org.apache.qpid.server.store.DurableConfigurationStore; @ManagedObject (creatable = false) public interface SystemConfig<X extends SystemConfig<X>> extends ConfiguredObject<X> { - EventLogger getEventLogger(); + String MANAGEMENT_MODE = "managementMode"; + + String MANAGEMENT_MODE_QUIESCE_VIRTUAL_HOSTS = "managementModeQuiesceVirtualHosts"; + String MANAGEMENT_MODE_RMI_PORT_OVERRIDE = "managementModeRmiPortOverride"; + String MANAGEMENT_MODE_JMX_PORT_OVERRIDE = "managementModeJmxPortOverride"; + String MANAGEMENT_MODE_HTTP_PORT_OVERRIDE = "managementModeHttpPortOverride"; + String MANAGEMENT_MODE_PASSWORD = "managementModePassword"; + String INITIAL_CONFIGURATION_LOCATION = "initialConfigurationLocation"; + + @ManagedAttribute(defaultValue = "false") + boolean isManagementMode(); + + @ManagedAttribute(defaultValue = "0") + int getManagementModeRmiPortOverride(); + + @ManagedAttribute(defaultValue = "0") + int getManagementModeJmxPortOverride(); + + @ManagedAttribute(defaultValue = "0") + int getManagementModeHttpPortOverride(); + + @ManagedAttribute(defaultValue = "false") + boolean isManagementModeQuiesceVirtualHosts(); - BrokerOptions getBrokerOptions(); + @ManagedAttribute(secure = true) + String getManagementModePassword(); + + @ManagedAttribute + String getInitialConfigurationLocation(); + + + EventLogger getEventLogger(); Broker getBroker(); @@ -39,4 +67,5 @@ public interface SystemConfig<X extends SystemConfig<X>> extends ConfiguredObjec DurableConfigurationStore getConfigurationStore(); BrokerShutdownProvider getBrokerShutdownProvider(); + } diff --git a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java index 313fd509e2..13182cb93e 100644 --- a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java +++ b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java @@ -71,13 +71,13 @@ public class BrokerAdapter extends AbstractConfiguredObject<BrokerAdapter> imple CONNECTION_HEART_BEAT_DELAY, STATISTICS_REPORTING_PERIOD }; + private SystemConfig<?> _parent; private EventLogger _eventLogger; private final LogRecorder _logRecorder; private final SecurityManager _securityManager; private AuthenticationProvider<?> _managementModeAuthenticationProvider; - private BrokerOptions _brokerOptions; private Timer _reportingTimer; private final StatisticsCounter _messagesDelivered, _dataDelivered, _messagesReceived, _dataReceived; @@ -108,18 +108,17 @@ public class BrokerAdapter extends AbstractConfiguredObject<BrokerAdapter> imple SystemConfig parent) { super(parentsMap(parent), attributes); - + _parent = parent; _logRecorder = parent.getLogRecorder(); _eventLogger = parent.getEventLogger(); - _brokerOptions = parent.getBrokerOptions(); - _securityManager = new SecurityManager(this, _brokerOptions.isManagementMode()); - if (_brokerOptions.isManagementMode()) + _securityManager = new SecurityManager(this, parent.isManagementMode()); + if (parent.isManagementMode()) { Map<String,Object> authManagerAttrs = new HashMap<String, Object>(); authManagerAttrs.put(NAME,"MANAGEMENT_MODE_AUTHENTICATION"); authManagerAttrs.put(ID, UUID.randomUUID()); SimpleAuthenticationManager authManager = new SimpleAuthenticationManager(authManagerAttrs, this); - authManager.addUser(BrokerOptions.MANAGEMENT_MODE_USER_NAME, _brokerOptions.getManagementModePassword()); + authManager.addUser(BrokerOptions.MANAGEMENT_MODE_USER_NAME, _parent.getManagementModePassword()); _managementModeAuthenticationProvider = authManager; } _messagesDelivered = new StatisticsCounter("messages-delivered"); @@ -230,7 +229,7 @@ public class BrokerAdapter extends AbstractConfiguredObject<BrokerAdapter> imple @StateTransition( currentState = State.UNINITIALIZED, desiredState = State.ACTIVE ) private void activate() { - if(_brokerOptions.isManagementMode()) + if(_parent.isManagementMode()) { _managementModeAuthenticationProvider.open(); } @@ -263,7 +262,7 @@ public class BrokerAdapter extends AbstractConfiguredObject<BrokerAdapter> imple } final boolean brokerShutdownOnErroredChild = getContextValue(Boolean.class, BROKER_FAIL_STARTUP_WITH_ERRORED_CHILD); - if (!_brokerOptions.isManagementMode() && brokerShutdownOnErroredChild && hasBrokerAnyErroredChildren) + if (!_parent.isManagementMode() && brokerShutdownOnErroredChild && hasBrokerAnyErroredChildren) { throw new IllegalStateException(String.format("Broker context variable %s is set and the broker has %s children", BROKER_FAIL_STARTUP_WITH_ERRORED_CHILD, State.ERRORED)); @@ -274,7 +273,7 @@ public class BrokerAdapter extends AbstractConfiguredObject<BrokerAdapter> imple if (isManagementMode()) { _eventLogger.message(BrokerMessages.MANAGEMENT_MODE(BrokerOptions.MANAGEMENT_MODE_USER_NAME, - _brokerOptions.getManagementModePassword())); + _parent.getManagementModePassword())); } setState(State.ACTIVE); } @@ -939,7 +938,7 @@ public class BrokerAdapter extends AbstractConfiguredObject<BrokerAdapter> imple @Override public boolean isManagementMode() { - return _brokerOptions.isManagementMode(); + return _parent.isManagementMode(); } @Override diff --git a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/plugin/SystemConfigFactory.java b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/plugin/SystemConfigFactory.java index 885194d939..6d4098afea 100644 --- a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/plugin/SystemConfigFactory.java +++ b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/plugin/SystemConfigFactory.java @@ -20,7 +20,8 @@ */ package org.apache.qpid.server.plugin; -import org.apache.qpid.server.BrokerOptions; +import java.util.Map; + import org.apache.qpid.server.configuration.updater.TaskExecutor; import org.apache.qpid.server.logging.EventLogger; import org.apache.qpid.server.logging.LogRecorder; @@ -32,6 +33,6 @@ public interface SystemConfigFactory<X extends SystemConfig<X>> extends Pluggabl public X newInstance(final TaskExecutor taskExecutor, final EventLogger eventLogger, final LogRecorder logRecorder, - final BrokerOptions brokerOptions, + final Map<String,Object> options, final BrokerShutdownProvider brokerShutdownProvider); } 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 fbb08cdd2a..57672dc4f7 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 @@ -34,7 +34,6 @@ import java.util.HashSet; import java.util.Map; import java.util.UUID; -import org.apache.qpid.server.model.BrokerShutdownProvider; import org.mockito.ArgumentCaptor; import org.mockito.invocation.InvocationOnMock; import org.mockito.stubbing.Answer; @@ -46,6 +45,7 @@ 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.Broker; +import org.apache.qpid.server.model.BrokerShutdownProvider; import org.apache.qpid.server.model.JsonSystemConfigImpl; import org.apache.qpid.server.model.Port; import org.apache.qpid.server.model.Protocol; @@ -79,7 +79,7 @@ public class ManagementModeStoreHandlerTest extends QpidTestCase _taskExecutor.start(); _systemConfig = new JsonSystemConfigImpl(_taskExecutor, mock(EventLogger.class), - mock(LogRecorder.class), new BrokerOptions(), + mock(LogRecorder.class), new BrokerOptions().convertToSystemConfigAttributes(), mock(BrokerShutdownProvider.class)); @@ -111,15 +111,29 @@ public class ManagementModeStoreHandlerTest extends QpidTestCase } ).when(_store).visitConfiguredObjectRecords(recovererArgumentCaptor.capture()); _options = new BrokerOptions(); - _handler = new ManagementModeStoreHandler(_store, _options); + + _handler = new ManagementModeStoreHandler(_store, _systemConfig);; _handler.openConfigurationStore(_systemConfig, false); } + private ManagementModeStoreHandler createManagementModeStoreHandler() + { + _systemConfig.close(); + _systemConfig = new JsonSystemConfigImpl(_taskExecutor, + mock(EventLogger.class), + mock(LogRecorder.class), + _options.convertToSystemConfigAttributes(), + mock(BrokerShutdownProvider.class)); + _systemConfig.open(); + return new ManagementModeStoreHandler(_store, _systemConfig); + } + @Override public void tearDown() throws Exception { _taskExecutor.stop(); + _systemConfig.close(); super.tearDown(); } @@ -154,7 +168,7 @@ public class ManagementModeStoreHandlerTest extends QpidTestCase public void testGetRootEntryWithHttpPortOverriden() { _options.setManagementModeHttpPortOverride(9090); - _handler = new ManagementModeStoreHandler(_store, _options); + _handler = createManagementModeStoreHandler(); _handler.openConfigurationStore(_systemConfig, false); ConfiguredObjectRecord root = getRootEntry(); assertEquals("Unexpected root id", _rootId, root.getId()); @@ -166,7 +180,7 @@ public class ManagementModeStoreHandlerTest extends QpidTestCase public void testGetRootEntryWithRmiPortOverriden() { _options.setManagementModeRmiPortOverride(9090); - _handler = new ManagementModeStoreHandler(_store, _options); + _handler = createManagementModeStoreHandler(); _handler.openConfigurationStore(_systemConfig, false); ConfiguredObjectRecord root = getRootEntry(); @@ -179,7 +193,7 @@ public class ManagementModeStoreHandlerTest extends QpidTestCase public void testGetRootEntryWithConnectorPortOverriden() { _options.setManagementModeJmxPortOverride(9090); - _handler = new ManagementModeStoreHandler(_store, _options); + _handler = createManagementModeStoreHandler(); _handler.openConfigurationStore(_systemConfig, false); ConfiguredObjectRecord root = getRootEntry(); @@ -194,7 +208,7 @@ public class ManagementModeStoreHandlerTest extends QpidTestCase _options.setManagementModeHttpPortOverride(1000); _options.setManagementModeRmiPortOverride(2000); _options.setManagementModeJmxPortOverride(3000); - _handler = new ManagementModeStoreHandler(_store, _options); + _handler = createManagementModeStoreHandler(); _handler.openConfigurationStore(_systemConfig, false); ConfiguredObjectRecord root = getRootEntry(); @@ -222,7 +236,7 @@ public class ManagementModeStoreHandlerTest extends QpidTestCase public void testGetEntryByCLIConnectorPortId() { _options.setManagementModeJmxPortOverride(9090); - _handler = new ManagementModeStoreHandler(_store, _options); + _handler = createManagementModeStoreHandler(); _handler.openConfigurationStore(_systemConfig, false); @@ -234,7 +248,7 @@ public class ManagementModeStoreHandlerTest extends QpidTestCase public void testGetEntryByCLIHttpPortId() { _options.setManagementModeHttpPortOverride(9090); - _handler = new ManagementModeStoreHandler(_store, _options); + _handler = createManagementModeStoreHandler(); _handler.openConfigurationStore(_systemConfig, false); @@ -249,7 +263,7 @@ public class ManagementModeStoreHandlerTest extends QpidTestCase attributes.put(Port.PROTOCOLS, Collections.singleton(Protocol.HTTP)); when(_portEntry.getAttributes()).thenReturn(attributes); _options.setManagementModeHttpPortOverride(9090); - _handler = new ManagementModeStoreHandler(_store, _options); + _handler = createManagementModeStoreHandler(); _handler.openConfigurationStore(_systemConfig, false); @@ -263,7 +277,7 @@ public class ManagementModeStoreHandlerTest extends QpidTestCase attributes.put(Port.PROTOCOLS, Collections.singleton(Protocol.RMI)); when(_portEntry.getAttributes()).thenReturn(attributes); _options.setManagementModeRmiPortOverride(9090); - _handler = new ManagementModeStoreHandler(_store, _options); + _handler = createManagementModeStoreHandler(); _handler.openConfigurationStore(_systemConfig, false); @@ -277,7 +291,7 @@ public class ManagementModeStoreHandlerTest extends QpidTestCase attributes.put(Port.PROTOCOLS, Collections.singleton(Protocol.JMX_RMI)); when(_portEntry.getAttributes()).thenReturn(attributes); _options.setManagementModeRmiPortOverride(9090); - _handler = new ManagementModeStoreHandler(_store, _options); + _handler = createManagementModeStoreHandler(); _handler.openConfigurationStore(_systemConfig, false); @@ -328,7 +342,7 @@ public class ManagementModeStoreHandlerTest extends QpidTestCase _options.setManagementModeQuiesceVirtualHosts(mmQuiesceVhosts); } - _handler = new ManagementModeStoreHandler(_store, _options); + _handler = createManagementModeStoreHandler(); _handler.openConfigurationStore(_systemConfig, false); ConfiguredObjectRecord hostEntry = getEntry(virtualHostId); @@ -354,7 +368,7 @@ public class ManagementModeStoreHandlerTest extends QpidTestCase _options.setManagementModeHttpPortOverride(1000); _options.setManagementModeRmiPortOverride(2000); _options.setManagementModeJmxPortOverride(3000); - _handler = new ManagementModeStoreHandler(_store, _options); + _handler = createManagementModeStoreHandler(); _handler.openConfigurationStore(_systemConfig, false); Map<String, Object> attributes = new HashMap<String, Object>(); @@ -371,7 +385,7 @@ public class ManagementModeStoreHandlerTest extends QpidTestCase _options.setManagementModeHttpPortOverride(1000); _options.setManagementModeRmiPortOverride(2000); _options.setManagementModeJmxPortOverride(3000); - _handler = new ManagementModeStoreHandler(_store, _options); + _handler = createManagementModeStoreHandler(); _handler.openConfigurationStore(_systemConfig, false); ConfiguredObjectRecord root = getRootEntry(); @@ -386,7 +400,7 @@ public class ManagementModeStoreHandlerTest extends QpidTestCase public void testSaveCLIHttpPort() { _options.setManagementModeHttpPortOverride(1000); - _handler = new ManagementModeStoreHandler(_store, _options); + _handler = createManagementModeStoreHandler(); _handler.openConfigurationStore(_systemConfig, false); UUID portId = getOptionsPortId(); @@ -410,7 +424,7 @@ public class ManagementModeStoreHandlerTest extends QpidTestCase public void testRemove() { _options.setManagementModeHttpPortOverride(1000); - _handler = new ManagementModeStoreHandler(_store, _options); + _handler = createManagementModeStoreHandler(); _handler.openConfigurationStore(_systemConfig, false); ConfiguredObjectRecord record = new ConfiguredObjectRecord() @@ -446,7 +460,7 @@ public class ManagementModeStoreHandlerTest extends QpidTestCase public void testRemoveCLIPort() { _options.setManagementModeHttpPortOverride(1000); - _handler = new ManagementModeStoreHandler(_store, _options); + _handler = createManagementModeStoreHandler(); _handler.openConfigurationStore(_systemConfig, false); UUID portId = getOptionsPortId(); diff --git a/qpid/java/broker-core/src/test/java/org/apache/qpid/server/store/BrokerRecovererTest.java b/qpid/java/broker-core/src/test/java/org/apache/qpid/server/store/BrokerRecovererTest.java index f4802481cb..07139881c1 100644 --- a/qpid/java/broker-core/src/test/java/org/apache/qpid/server/store/BrokerRecovererTest.java +++ b/qpid/java/broker-core/src/test/java/org/apache/qpid/server/store/BrokerRecovererTest.java @@ -69,7 +69,7 @@ public class BrokerRecovererTest extends TestCase _brokerShutdownProvider = mock(BrokerShutdownProvider.class); _systemConfig = new JsonSystemConfigImpl(_taskExecutor, mock(EventLogger.class), mock(LogRecorder.class), - new BrokerOptions(), + new BrokerOptions().convertToSystemConfigAttributes(), _brokerShutdownProvider); when(_brokerEntry.getId()).thenReturn(_brokerId); diff --git a/qpid/java/broker-core/src/test/java/org/apache/qpid/server/store/BrokerStoreUpgraderAndRecovererTest.java b/qpid/java/broker-core/src/test/java/org/apache/qpid/server/store/BrokerStoreUpgraderAndRecovererTest.java index 830fa46c2c..274ff1b1a7 100644 --- a/qpid/java/broker-core/src/test/java/org/apache/qpid/server/store/BrokerStoreUpgraderAndRecovererTest.java +++ b/qpid/java/broker-core/src/test/java/org/apache/qpid/server/store/BrokerStoreUpgraderAndRecovererTest.java @@ -81,7 +81,7 @@ public class BrokerStoreUpgraderAndRecovererTest extends QpidTestCase _systemConfig = new JsonSystemConfigImpl(_taskExecutor, mock(EventLogger.class), mock(LogRecorder.class), - new BrokerOptions(), + new BrokerOptions().convertToSystemConfigAttributes(), mock(BrokerShutdownProvider.class)); } diff --git a/qpid/java/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/store/derby/DerbySystemConfigImpl.java b/qpid/java/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/store/derby/DerbySystemConfigImpl.java index a8b9edaa12..0cc4f2b18c 100644 --- a/qpid/java/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/store/derby/DerbySystemConfigImpl.java +++ b/qpid/java/broker-plugins/derby-store/src/main/java/org/apache/qpid/server/store/derby/DerbySystemConfigImpl.java @@ -20,7 +20,8 @@ */ package org.apache.qpid.server.store.derby; -import org.apache.qpid.server.BrokerOptions; +import java.util.Map; + import org.apache.qpid.server.configuration.updater.TaskExecutor; import org.apache.qpid.server.logging.EventLogger; import org.apache.qpid.server.logging.LogRecorder; @@ -48,10 +49,10 @@ public class DerbySystemConfigImpl extends AbstractSystemConfig<DerbySystemConfi public DerbySystemConfigImpl(final TaskExecutor taskExecutor, final EventLogger eventLogger, final LogRecorder logRecorder, - final BrokerOptions brokerOptions, + final Map<String,Object> attributes, final BrokerShutdownProvider brokerShutdownProvider) { - super(taskExecutor, eventLogger, logRecorder, brokerOptions, brokerShutdownProvider); + super(taskExecutor, eventLogger, logRecorder, attributes, brokerShutdownProvider); } @Override diff --git a/qpid/java/broker-plugins/jdbc-store/src/main/java/org/apache/qpid/server/store/jdbc/JDBCSystemConfigImpl.java b/qpid/java/broker-plugins/jdbc-store/src/main/java/org/apache/qpid/server/store/jdbc/JDBCSystemConfigImpl.java index a552b170a0..9c3d33fc04 100644 --- a/qpid/java/broker-plugins/jdbc-store/src/main/java/org/apache/qpid/server/store/jdbc/JDBCSystemConfigImpl.java +++ b/qpid/java/broker-plugins/jdbc-store/src/main/java/org/apache/qpid/server/store/jdbc/JDBCSystemConfigImpl.java @@ -20,7 +20,8 @@ */ package org.apache.qpid.server.store.jdbc; -import org.apache.qpid.server.BrokerOptions; +import java.util.Map; + import org.apache.qpid.server.configuration.updater.TaskExecutor; import org.apache.qpid.server.logging.EventLogger; import org.apache.qpid.server.logging.LogRecorder; @@ -50,10 +51,10 @@ public class JDBCSystemConfigImpl extends AbstractSystemConfig<JDBCSystemConfigI public JDBCSystemConfigImpl(final TaskExecutor taskExecutor, final EventLogger eventLogger, final LogRecorder logRecorder, - final BrokerOptions brokerOptions, + final Map<String,Object> attributes, final BrokerShutdownProvider brokerShutdownProvider) { - super(taskExecutor, eventLogger, logRecorder, brokerOptions, brokerShutdownProvider); + super(taskExecutor, eventLogger, logRecorder, attributes, brokerShutdownProvider); } @Override diff --git a/qpid/java/broker-plugins/memory-store/src/main/java/org/apache/qpid/server/store/MemorySystemConfigImpl.java b/qpid/java/broker-plugins/memory-store/src/main/java/org/apache/qpid/server/store/MemorySystemConfigImpl.java index 3f5215219b..a15de21ce7 100644 --- a/qpid/java/broker-plugins/memory-store/src/main/java/org/apache/qpid/server/store/MemorySystemConfigImpl.java +++ b/qpid/java/broker-plugins/memory-store/src/main/java/org/apache/qpid/server/store/MemorySystemConfigImpl.java @@ -20,7 +20,8 @@ */ package org.apache.qpid.server.store; -import org.apache.qpid.server.BrokerOptions; +import java.util.Map; + import org.apache.qpid.server.configuration.updater.TaskExecutor; import org.apache.qpid.server.logging.EventLogger; import org.apache.qpid.server.logging.LogRecorder; @@ -40,10 +41,10 @@ public class MemorySystemConfigImpl extends AbstractSystemConfig<MemorySystemCon public MemorySystemConfigImpl(final TaskExecutor taskExecutor, final EventLogger eventLogger, final LogRecorder logRecorder, - final BrokerOptions brokerOptions, + final Map<String,Object> attributes, final BrokerShutdownProvider brokerShutdownProvider) { - super(taskExecutor, eventLogger, logRecorder, brokerOptions, brokerShutdownProvider); + super(taskExecutor, eventLogger, logRecorder, attributes, brokerShutdownProvider); } @Override 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 fb254f59ae..3d0fb90036 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 @@ -108,7 +108,7 @@ public class TestBrokerConfiguration final AbstractSystemConfig parentObject = new JsonSystemConfigImpl(taskExecutor, mock(EventLogger.class), mock(LogRecorder.class), - brokerOptions, + brokerOptions.convertToSystemConfigAttributes(), mock(BrokerShutdownProvider.class)); ConfiguredObjectRecordConverter converter = new ConfiguredObjectRecordConverter(BrokerModel.getInstance()); @@ -219,7 +219,7 @@ public class TestBrokerConfiguration final SystemConfig parentObject = configFactory.newInstance(_taskExecutor, mock(EventLogger.class), mock(LogRecorder.class), - brokerOptions, + brokerOptions.convertToSystemConfigAttributes(), mock(BrokerShutdownProvider.class)); parentObject.open(); |
