summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Rudyy <orudyy@apache.org>2013-01-11 17:39:12 +0000
committerAlex Rudyy <orudyy@apache.org>2013-01-11 17:39:12 +0000
commitc26462b01199f95a7a27b82a54d956b1c793cc58 (patch)
treec2c3c103051562fbb2b6e669ae4f915a7eabd5a2
parent0c5369f37f4e075fbf107bceb1d794594c2330c7 (diff)
downloadqpid-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
-rw-r--r--qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java5
-rw-r--r--qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementFactory.java4
-rw-r--r--qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagement.java4
-rw-r--r--qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagementFactory.java4
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/startup/BrokerRecoverer.java3
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/startup/GroupProviderRecoverer.java4
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/startup/VirtualHostRecoverer.java7
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/model/ConfiguredObject.java19
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractAdapter.java37
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractKeyStoreAdapter.java2
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractPluginAdapter.java4
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AuthenticationProviderAdapter.java15
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AuthenticationProviderFactory.java8
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/BindingAdapter.java2
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java9
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ConnectionAdapter.java4
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ConsumerAdapter.java2
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/ExchangeAdapter.java2
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/GroupProviderAdapter.java8
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/PortAdapter.java4
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/PortFactory.java8
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/QueueAdapter.java4
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/SessionAdapter.java2
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/VirtualHostAdapter.java20
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/VirtualHostAliasAdapter.java2
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/transport/AmqpPortAdapter.java4
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;
}