diff options
author | Alex Rudyy <orudyy@apache.org> | 2013-01-11 17:39:12 +0000 |
---|---|---|
committer | Alex Rudyy <orudyy@apache.org> | 2013-01-11 17:39:12 +0000 |
commit | c26462b01199f95a7a27b82a54d956b1c793cc58 (patch) | |
tree | c2c3c103051562fbb2b6e669ae4f915a7eabd5a2 | |
parent | 0c5369f37f4e075fbf107bceb1d794594c2330c7 (diff) | |
download | qpid-python-c26462b01199f95a7a27b82a54d956b1c793cc58.tar.gz |
QPID-4390: Add default attributes support
git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/java-broker-config-qpid-4390@1432184 13f79535-47bb-0310-9956-ffa450edef68
26 files changed, 132 insertions, 55 deletions
diff --git a/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java b/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java index 473a7754e9..9d1eb12f7e 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java +++ b/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java @@ -24,6 +24,7 @@ import java.io.File; import java.util.Collection; import java.util.Collections; import java.util.HashSet; +import java.util.Map; import java.util.UUID; import org.apache.log4j.Logger; @@ -92,9 +93,9 @@ public class HttpManagement extends AbstractPluginAdapter private final HttpConfiguration _configuration; - public HttpManagement(UUID id, Broker broker, HttpConfiguration configuration) + public HttpManagement(UUID id, Broker broker, HttpConfiguration configuration, Map<String, Object> defaults) { - super(id); + super(id, defaults); _broker = broker; _configuration = configuration; addParent(Broker.class, broker); diff --git a/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementFactory.java b/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementFactory.java index 5a82297b50..ceae949ae2 100644 --- a/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementFactory.java +++ b/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementFactory.java @@ -61,6 +61,8 @@ public class HttpManagementFactory implements PluginFactory getStringAttribute(KEY_STORE_PATH, attributes, null), getStringAttribute(KEY_STORE_PASSWORD, attributes, null) ); - return new HttpManagement( id, broker, configuration); + //TODO: create defaults + Map<String, Object> defaults = null; + return new HttpManagement( id, broker, configuration, defaults); } } diff --git a/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagement.java b/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagement.java index 122a0accd4..293af28d6b 100644 --- a/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagement.java +++ b/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagement.java @@ -70,9 +70,9 @@ public class JMXManagement extends AbstractPluginAdapter implements Configuratio private final JMXConfiguration _jmxConfiguration; - public JMXManagement(UUID id, Broker broker, JMXConfiguration jmxConfiguration) + public JMXManagement(UUID id, Broker broker, JMXConfiguration jmxConfiguration, Map<String, Object> defaults) { - super(id); + super(id, defaults); _broker = broker; _jmxConfiguration = jmxConfiguration; } diff --git a/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagementFactory.java b/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagementFactory.java index 0fa0ca96d9..50d87d2172 100644 --- a/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagementFactory.java +++ b/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagementFactory.java @@ -55,7 +55,9 @@ public class JMXManagementFactory implements PluginFactory getStringAttribute(KEY_STORE_PASSWORD, attributes, null), getBooleanAttribute(MANAGEMENT_RIGHTS_INFER_ALL_ACCESS, attributes, true)); - return new JMXManagement(id, broker, jmxConfiguration); + //TODO: create defaults + Map<String, Object> defaults = null; + return new JMXManagement(id, broker, jmxConfiguration, defaults); } else { diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/startup/BrokerRecoverer.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/startup/BrokerRecoverer.java index 6f9a40b85c..29dd3a603f 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/startup/BrokerRecoverer.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/startup/BrokerRecoverer.java @@ -28,6 +28,7 @@ public class BrokerRecoverer implements ConfiguredObjectRecoverer<Broker> private final RootMessageLogger _rootMessageLogger; private final AuthenticationProviderFactory _authenticationProviderFactory; private final PortFactory _portFactory; + private Map<String, Object> _defaults; public BrokerRecoverer(AuthenticationProviderFactory authenticationProviderFactory, PortFactory portFactory, StatisticsGatherer statisticsGatherer, VirtualHostRegistry virtualHostRegistry, LogRecorder logRecorder, @@ -44,7 +45,7 @@ public class BrokerRecoverer implements ConfiguredObjectRecoverer<Broker> @Override public Broker create(RecovererProvider recovererProvider, ConfigurationEntry entry, ConfiguredObject... parents) { - BrokerAdapter broker = new BrokerAdapter(entry.getId(), entry.getAttributes(), _statisticsGatherer, + BrokerAdapter broker = new BrokerAdapter(entry.getId(), entry.getAttributes(), _defaults, _statisticsGatherer, _virtualHostRegistry, _logRecorder, _rootMessageLogger, _authenticationProviderFactory, _portFactory); Map<String, Collection<ConfigurationEntry>> childEntries = entry.getChildren(); for (String type : childEntries.keySet()) diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/startup/GroupProviderRecoverer.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/startup/GroupProviderRecoverer.java index 275a0c736c..dbec0f27aa 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/startup/GroupProviderRecoverer.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/startup/GroupProviderRecoverer.java @@ -54,7 +54,9 @@ public class GroupProviderRecoverer implements ConfiguredObjectRecoverer<GroupPr { throw new IllegalConfigurationException("Cannot create GroupManager from attributes : " + attributes); } - GroupProviderAdapter groupProviderAdapter = new GroupProviderAdapter(configurationEntry.getId(), groupManager, broker); + //TODO: add defaults + Map<String, Object> defaults = null; + GroupProviderAdapter groupProviderAdapter = new GroupProviderAdapter(configurationEntry.getId(), groupManager, broker, defaults); return groupProviderAdapter; } diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/startup/VirtualHostRecoverer.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/startup/VirtualHostRecoverer.java index 1f4b44e94c..f7b332ec33 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/startup/VirtualHostRecoverer.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/startup/VirtualHostRecoverer.java @@ -20,6 +20,8 @@ */ package org.apache.qpid.server.configuration.startup; +import java.util.Map; + import org.apache.qpid.server.configuration.ConfigurationEntry; import org.apache.qpid.server.configuration.ConfiguredObjectRecoverer; import org.apache.qpid.server.configuration.RecovererProvider; @@ -43,7 +45,10 @@ public class VirtualHostRecoverer implements ConfiguredObjectRecoverer<VirtualHo public VirtualHost create(RecovererProvider recovererProvider, ConfigurationEntry entry, ConfiguredObject... parents) { Broker broker = RecovererHelper.verifyOnlyBrokerIsParent(parents); - return new VirtualHostAdapter(entry.getId(), entry.getAttributes(),broker, _brokerStatisticsGatherer); + + //TODO add defaults + Map<String, Object> defaults = null; + return new VirtualHostAdapter(entry.getId(), entry.getAttributes(),broker, _brokerStatisticsGatherer, defaults); } } diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/ConfiguredObject.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/ConfiguredObject.java index 146c0eb60f..31c4301efc 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/ConfiguredObject.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/ConfiguredObject.java @@ -201,14 +201,27 @@ public interface ConfiguredObject /** - * Return the value for the given attribute + * Return the value for the given attribute name. The actual attribute value + * is returned if the configured object has such attribute set. If not, the + * value is looked in parent hierarchy from bottom to top. If no parent has + * an attribute set than the value is looked in the object default attributes. * - * @param name the name of the attribute - * @return the value of the attribute at the object (or null if the attribute is not set + * @param name + * the name of the attribute + * @return the value of the attribute at the object (or null if the + * attribute value is set neither on object itself, no object + * parents, no in defaults) */ Object getAttribute(String name); /** + * Return the map containing only explicitly set attributes + * + * @return the map with the attributes + */ + Map<String, Object> getActualAttributes(); + + /** * Set the value of an attribute * * @param name the name of the attribute to be set diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractAdapter.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractAdapter.java index 3634c01b05..1e14704987 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractAdapter.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractAdapter.java @@ -41,10 +41,15 @@ abstract class AbstractAdapter implements ConfiguredObject new ArrayList<ConfigurationChangeListener>(); private final UUID _id; + private final Map<String, Object> _defaultAttributes = new HashMap<String, Object>(); - protected AbstractAdapter(UUID id) + protected AbstractAdapter(UUID id, Map<String, Object> defaults) { _id = id; + if (defaults != null) + { + _defaultAttributes.putAll(defaults); + } } public final UUID getId() @@ -135,7 +140,33 @@ abstract class AbstractAdapter implements ConfiguredObject } } - public Object getAttribute(final String name) + + private final Object getDefaultAttribute(String name) + { + return _defaultAttributes.get(name); + } + + @Override + public Object getAttribute(String name) + { + Object value = getActualAttribute(name); + if (value == null) + { + value = getDefaultAttribute(name); + } + return value; + } + + @Override + public final Map<String, Object> getActualAttributes() + { + synchronized (this) + { + return new HashMap<String, Object>(_attributes); + } + } + + private Object getActualAttribute(final String name) { synchronized (this) { @@ -148,7 +179,7 @@ abstract class AbstractAdapter implements ConfiguredObject { synchronized (this) { - Object currentValue = _attributes.get(name); + Object currentValue = getAttribute(name); if((currentValue == null && expected == null) || (currentValue != null && currentValue.equals(expected))) { diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractKeyStoreAdapter.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractKeyStoreAdapter.java index a479de9769..83426e4b27 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractKeyStoreAdapter.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractKeyStoreAdapter.java @@ -42,7 +42,7 @@ public abstract class AbstractKeyStoreAdapter extends AbstractAdapter protected AbstractKeyStoreAdapter(UUID id, Broker broker, Map<String, Object> attributes) { - super(id); + super(id, null); addParent(Broker.class, broker); _name = MapValueConverter.getStringAttribute(TrustStore.NAME, attributes); _password = MapValueConverter.getStringAttribute(TrustStore.PASSWORD, attributes); diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractPluginAdapter.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractPluginAdapter.java index c0a4fcdd29..2b0d75e90b 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractPluginAdapter.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractPluginAdapter.java @@ -35,9 +35,9 @@ import org.apache.qpid.server.model.Statistics; public abstract class AbstractPluginAdapter extends AbstractAdapter implements Plugin { - protected AbstractPluginAdapter(UUID id) + protected AbstractPluginAdapter(UUID id, Map<String, Object> defaults) { - super(id); + super(id, defaults); } @Override diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AuthenticationProviderAdapter.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AuthenticationProviderAdapter.java index df2bdc7a13..77018412b6 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AuthenticationProviderAdapter.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AuthenticationProviderAdapter.java @@ -63,9 +63,9 @@ public abstract class AuthenticationProviderAdapter<T extends AuthenticationMana private GroupPrincipalAccessor _groupAccessor; - private AuthenticationProviderAdapter(UUID id, Broker broker, final T authManager) + private AuthenticationProviderAdapter(UUID id, Broker broker, final T authManager, Map<String, Object> defaults) { - super(id); + super(id, defaults); _authManager = authManager; _broker = broker; addParent(Broker.class, broker); @@ -246,20 +246,21 @@ public abstract class AuthenticationProviderAdapter<T extends AuthenticationMana public static class SimpleAuthenticationProviderAdapter extends AuthenticationProviderAdapter<AuthenticationManager> { public SimpleAuthenticationProviderAdapter( - UUID id, Broker broker, AuthenticationManager authManager) + UUID id, Broker broker, AuthenticationManager authManager, Map<String, Object> defaults) { - super(id, broker,authManager); + super(id, broker,authManager, defaults); } } + //TODO: add file path attribute into actual attributes public static class PrincipalDatabaseAuthenticationManagerAdapter extends AuthenticationProviderAdapter<PrincipalDatabaseAuthenticationManager> implements PasswordCredentialManagingAuthenticationProvider { public PrincipalDatabaseAuthenticationManagerAdapter( - UUID id, Broker broker, PrincipalDatabaseAuthenticationManager authManager) + UUID id, Broker broker, PrincipalDatabaseAuthenticationManager authManager, Map<String, Object> defaults) { - super(id, broker, authManager); + super(id, broker, authManager, defaults); } @Override @@ -384,7 +385,7 @@ public abstract class AuthenticationProviderAdapter<T extends AuthenticationMana public PrincipalAdapter(Principal user) { - super(UUIDGenerator.generateUserUUID(PrincipalDatabaseAuthenticationManagerAdapter.this.getName(), user.getName())); + super(UUIDGenerator.generateUserUUID(PrincipalDatabaseAuthenticationManagerAdapter.this.getName(), user.getName()), null); _user = user; } diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AuthenticationProviderFactory.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AuthenticationProviderFactory.java index 9ea075a8a0..b36f8645bc 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AuthenticationProviderFactory.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AuthenticationProviderFactory.java @@ -59,12 +59,16 @@ public class AuthenticationProviderFactory AuthenticationProviderAdapter<?> authenticationProvider; if (manager instanceof PrincipalDatabaseAuthenticationManager) { + // TODO : add defaults + Map<String, Object> defaults = null; authenticationProvider = new PrincipalDatabaseAuthenticationManagerAdapter(id, broker, - (PrincipalDatabaseAuthenticationManager) manager); + (PrincipalDatabaseAuthenticationManager) manager, defaults); } else { - authenticationProvider = new SimpleAuthenticationProviderAdapter(id, broker, manager); + // TODO : add defaults + Map<String, Object> defaults = null; + authenticationProvider = new SimpleAuthenticationProviderAdapter(id, broker, manager, attributes); } authenticationProvider.setGroupAccessor(groupPrincipalAccessor); return authenticationProvider; diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/BindingAdapter.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/BindingAdapter.java index 6fa4d31fe5..36370621e1 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/BindingAdapter.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/BindingAdapter.java @@ -48,7 +48,7 @@ final class BindingAdapter extends AbstractAdapter implements Binding ExchangeAdapter exchangeAdapter, QueueAdapter queueAdapter) { - super(binding.getId()); + super(binding.getId(), null); _binding = binding; _exchange = exchangeAdapter; _queue = queueAdapter; diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java index 89351dfb0f..d641c82e83 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java @@ -105,11 +105,11 @@ public class BrokerAdapter extends AbstractAdapter implements Broker, Configurat private int _statisticsReportingPeriod; private boolean _statisticsReportingResetEnabled; - public BrokerAdapter(UUID id, Map<String, Object> attributes, StatisticsGatherer statisticsGatherer, VirtualHostRegistry virtualHostRegistry, + public BrokerAdapter(UUID id, Map<String, Object> attributes, Map<String, Object> defaults, StatisticsGatherer statisticsGatherer, VirtualHostRegistry virtualHostRegistry, LogRecorder logRecorder, RootMessageLogger rootMessageLogger, AuthenticationProviderFactory authenticationProviderFactory, PortFactory portFactory) { - super(id); + super(id, defaults); _name = "Broker"; _statisticsGatherer = statisticsGatherer; _virtualHostRegistry = virtualHostRegistry; @@ -215,8 +215,10 @@ public class BrokerAdapter extends AbstractAdapter implements Broker, Configurat private VirtualHost createVirtualHost(final Map<String, Object> attributes) throws AccessControlException, IllegalArgumentException { + //TODO create defaults + Map<String, Object> defaults = null; final VirtualHostAdapter virtualHostAdapter = new VirtualHostAdapter(UUID.randomUUID(), attributes, this, - _statisticsGatherer); + _statisticsGatherer, defaults); synchronized (_vhostAdapters) { @@ -328,6 +330,7 @@ public class BrokerAdapter extends AbstractAdapter implements Broker, Configurat return Collections.emptySet(); } + //TODO: ACL @SuppressWarnings("unchecked") @Override public <C extends ConfiguredObject> C createChild(Class<C> childClass, Map<String, Object> attributes, ConfiguredObject... otherParents) diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ConnectionAdapter.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ConnectionAdapter.java index c160d65b5f..d1af6c8ae0 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ConnectionAdapter.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ConnectionAdapter.java @@ -50,9 +50,9 @@ final class ConnectionAdapter extends AbstractAdapter implements Connection new HashMap<AMQSessionModel, SessionAdapter>(); private final Statistics _statistics; - public ConnectionAdapter(final AMQConnectionModel conn) + public ConnectionAdapter(final AMQConnectionModel conn, Map<String, Object> defaults) { - super(UUIDGenerator.generateRandomUUID()); + super(UUIDGenerator.generateRandomUUID(), defaults); _connection = conn; _statistics = new ConnectionStatisticsAdapter(conn); } diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ConsumerAdapter.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ConsumerAdapter.java index 494e226dc4..362993767e 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ConsumerAdapter.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ConsumerAdapter.java @@ -45,7 +45,7 @@ public class ConsumerAdapter extends AbstractAdapter implements Consumer queueAdapter.getName(), subscription.getSessionModel().getConnectionModel().getRemoteAddressString(), String.valueOf(subscription.getSessionModel().getChannelId()), - subscription.getConsumerName())); + subscription.getConsumerName()), null); _subscription = subscription; _queue = queueAdapter; _statistics = new ConsumerStatistics(); diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ExchangeAdapter.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ExchangeAdapter.java index b945180137..c6f15ff065 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ExchangeAdapter.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ExchangeAdapter.java @@ -56,7 +56,7 @@ final class ExchangeAdapter extends AbstractAdapter implements Exchange, org.apa public ExchangeAdapter(final VirtualHostAdapter virtualHostAdapter, final org.apache.qpid.server.exchange.Exchange exchange) { - super(exchange.getId()); + super(exchange.getId(), null); _statistics = new ExchangeStatistics(); _vhost = virtualHostAdapter; _exchange = exchange; diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/GroupProviderAdapter.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/GroupProviderAdapter.java index e2c2632ab5..13f1e27076 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/GroupProviderAdapter.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/GroupProviderAdapter.java @@ -47,9 +47,9 @@ public class GroupProviderAdapter extends AbstractAdapter implements { private final GroupManager _groupManager; private final Broker _broker; - public GroupProviderAdapter(UUID id, GroupManager groupManager, Broker broker) + public GroupProviderAdapter(UUID id, GroupManager groupManager, Broker broker, Map<String, Object> defaults) { - super(id); + super(id, defaults); if (groupManager == null) { @@ -231,7 +231,7 @@ public class GroupProviderAdapter extends AbstractAdapter implements public GroupAdapter(String group) { super(UUIDGenerator.generateGroupUUID( - GroupProviderAdapter.this.getName(), group)); + GroupProviderAdapter.this.getName(), group), null); _group = group; } @@ -409,7 +409,7 @@ public class GroupProviderAdapter extends AbstractAdapter implements super(UUIDGenerator .generateGroupMemberUUID( GroupProviderAdapter.this.getName(), _group, - memberName)); + memberName), null); _memberName = memberName; } diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/PortAdapter.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/PortAdapter.java index 0d654de047..9b6f6ba9fa 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/PortAdapter.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/PortAdapter.java @@ -67,9 +67,9 @@ public class PortAdapter extends AbstractAdapter implements Port * protocols on the same port we need to introduce a special entity like * PortAceptor which will be responsible for port binding/unbinding */ - public PortAdapter(UUID id, Broker broker, Map<String, Object> attributes) + public PortAdapter(UUID id, Broker broker, Map<String, Object> attributes, Map<String, Object> defaults) { - super(id); + super(id, defaults); _broker = broker; addParent(Broker.class, broker); diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/PortFactory.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/PortFactory.java index c6519cbfd5..fcd30586d7 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/PortFactory.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/PortFactory.java @@ -50,11 +50,15 @@ public class PortFactory final Port port; if (isAmqpProtocol(attributes)) { - port = new AmqpPortAdapter(id, broker, attributes); + //TODO: create defaults + Map<String, Object> defaults = null; + port = new AmqpPortAdapter(id, broker, attributes, defaults); } else { - port = new PortAdapter(id, broker, attributes); + //TODO: create defaults + Map<String, Object> defaults = null; + port = new PortAdapter(id, broker, attributes, defaults); } return port; } diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/QueueAdapter.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/QueueAdapter.java index dbb1f13134..c8450018e0 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/QueueAdapter.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/QueueAdapter.java @@ -78,9 +78,9 @@ final class QueueAdapter extends AbstractAdapter implements Queue, AMQQueue.Subs private QueueStatisticsAdapter _statistics; private QueueNotificationListener _queueNotificationListener; - public QueueAdapter(final VirtualHostAdapter virtualHostAdapter, final AMQQueue queue) + public QueueAdapter(final VirtualHostAdapter virtualHostAdapter, final AMQQueue queue, Map<String, Object> defaults) { - super(queue.getId()); + super(queue.getId(), defaults); _vhost = virtualHostAdapter; addParent(org.apache.qpid.server.model.VirtualHost.class, virtualHostAdapter); diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/SessionAdapter.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/SessionAdapter.java index 6807968f14..9563ab583e 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/SessionAdapter.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/SessionAdapter.java @@ -46,7 +46,7 @@ final class SessionAdapter extends AbstractAdapter implements Session public SessionAdapter(final AMQSessionModel session) { - super(UUIDGenerator.generateRandomUUID()); + super(UUIDGenerator.generateRandomUUID(), null); _session = session; _statistics = new SessionStatistics(); } diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/VirtualHostAdapter.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/VirtualHostAdapter.java index 4eae659b45..1eb7edf261 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/VirtualHostAdapter.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/VirtualHostAdapter.java @@ -92,9 +92,9 @@ public final class VirtualHostAdapter extends AbstractAdapter implements Virtual private final String _configurationFile; private StatisticsGatherer _brokerStatisticsGatherer; - public VirtualHostAdapter(UUID id, Map<String, Object> attributes, Broker broker, StatisticsGatherer brokerStatisticsGatherer) + public VirtualHostAdapter(UUID id, Map<String, Object> attributes, Broker broker, StatisticsGatherer brokerStatisticsGatherer, Map<String, Object> defaults) { - super(id); + super(id, defaults); _broker = broker; _name = MapValueConverter.getStringAttribute(NAME, attributes); _configurationFile = MapValueConverter.getStringAttribute(CONFIGURATION, attributes); @@ -131,7 +131,9 @@ public final class VirtualHostAdapter extends AbstractAdapter implements Virtual { if(!_queueAdapters.containsKey(queue)) { - _queueAdapters.put(queue, new QueueAdapter(this,queue)); + //TODO: create queue defaults map + Map<String, Object> queueDefaults = null; + _queueAdapters.put(queue, new QueueAdapter(this,queue, queueDefaults)); } } } @@ -149,7 +151,9 @@ public final class VirtualHostAdapter extends AbstractAdapter implements Virtual { if(!_connectionAdapters.containsKey(conn)) { - _connectionAdapters.put(conn, new ConnectionAdapter(conn)); + //TODO: create connection defaults + Map<String, Object> connectionDefaults = null; + _connectionAdapters.put(conn, new ConnectionAdapter(conn, connectionDefaults)); } } } @@ -511,7 +515,9 @@ public final class VirtualHostAdapter extends AbstractAdapter implements Virtual { if(!_queueAdapters.containsKey(queue)) { - adapter = new QueueAdapter(this, queue); + //TODO: create queue defaults + Map<String, Object> queueDefaults = null; + adapter = new QueueAdapter(this, queue, queueDefaults); _queueAdapters.put(queue, adapter); } @@ -547,7 +553,9 @@ public final class VirtualHostAdapter extends AbstractAdapter implements Virtual { if(!_connectionAdapters.containsKey(connection)) { - adapter = new ConnectionAdapter(connection); + //TODO: create defaults + Map<String, Object> defaults = null; + adapter = new ConnectionAdapter(connection, defaults); _connectionAdapters.put(connection, adapter); } diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/VirtualHostAliasAdapter.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/VirtualHostAliasAdapter.java index fc07556073..b642a80d55 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/VirtualHostAliasAdapter.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/VirtualHostAliasAdapter.java @@ -43,7 +43,7 @@ public class VirtualHostAliasAdapter extends AbstractAdapter implements Virtual public VirtualHostAliasAdapter(VirtualHostAdapter virtualHostAdapter, Port port) { - super(UUIDGenerator.generateVhostAliasUUID(virtualHostAdapter.getName(), port.getName())); + super(UUIDGenerator.generateVhostAliasUUID(virtualHostAdapter.getName(), port.getName()), null); _vhost = virtualHostAdapter; _port = port; } diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/transport/AmqpPortAdapter.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/transport/AmqpPortAdapter.java index 0de958e33c..9abfd3ddcd 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/transport/AmqpPortAdapter.java +++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/transport/AmqpPortAdapter.java @@ -51,9 +51,9 @@ public class AmqpPortAdapter extends PortAdapter private final Broker _broker; private IncomingNetworkTransport _transport; - public AmqpPortAdapter(UUID id, Broker broker, Map<String, Object> attributes) + public AmqpPortAdapter(UUID id, Broker broker, Map<String, Object> attributes, Map<String, Object> defaultAttributes) { - super(id, broker, attributes); + super(id, broker, attributes, defaultAttributes); _broker = broker; } |