Author: orudyy
Date: Fri Jan 18 17:55:53 2013
New Revision: 1435277

URL: http://svn.apache.org/viewvc?rev=1435277&view=rev
Log:
QPID-4390: Introduce defaults in jmx management plugin

Removed:
    
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXConfiguration.java
Modified:
    
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java
    
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementFactory.java
    
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/HttpManagementFactoryTest.java
    
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagedObjectRegistry.java
    
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagement.java
    
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagementFactory.java
    
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/MBeanInvocationHandlerImpl.java
    
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/test/java/org/apache/qpid/server/jmx/JMXManagementFactoryTest.java
    
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/BrokerProperties.java
    
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java
    
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/startup/GroupProviderRecoverer.java
    
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractPluginAdapter.java
    
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/GroupProviderAdapter.java
    
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostImpl.java
    
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/resources/default.json
    
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/test/java/org/apache/qpid/server/virtualhost/VirtualHostImplTest.java
    
qpid/branches/java-broker-config-qpid-4390/qpid/java/systests/src/main/java/org/apache/qpid/systest/management/jmx/ManagementLoggingTest.java
    
qpid/branches/java-broker-config-qpid-4390/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java

Modified: 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java?rev=1435277&r1=1435276&r2=1435277&view=diff
==============================================================================
--- 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java
 (original)
+++ 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagement.java
 Fri Jan 18 17:55:53 2013
@@ -23,6 +23,7 @@ package org.apache.qpid.server.managemen
 import java.io.File;
 import java.util.Collection;
 import java.util.Collections;
+import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Map;
 import java.util.UUID;
@@ -58,6 +59,7 @@ import org.apache.qpid.server.model.Stat
 import org.apache.qpid.server.model.User;
 import org.apache.qpid.server.model.VirtualHost;
 import org.apache.qpid.server.model.adapter.AbstractPluginAdapter;
+import org.apache.qpid.server.plugin.PluginFactory;
 import org.eclipse.jetty.server.Connector;
 import org.eclipse.jetty.server.Server;
 import org.eclipse.jetty.server.SessionManager;
@@ -71,31 +73,57 @@ public class HttpManagement extends Abst
 {
     private final Logger _logger = Logger.getLogger(HttpManagement.class);
 
+    // 10 minutes by default
+    public static final int DEFAULT_TIMEOUT_IN_SECONDS = 60 * 10;
+
+    public static final String TIME_OUT = "sessionTimeout";
+    public static final String KEY_STORE_PATH = "keyStorePath";
+    public static final String KEY_STORE_PASSWORD = "keyStorePassword";
+    public static final String HTTP_BASIC_AUTHENTICATION_ENABLED = 
"httpBasicAuthenticationEnabled";
+    public static final String HTTPS_BASIC_AUTHENTICATION_ENABLED = 
"httpsBasicAuthenticationEnabled";
+    public static final String HTTP_SASL_AUTHENTICATION_ENABLED = 
"httpSaslAuthenticationEnabled";
+    public static final String HTTPS_SASL_AUTHENTICATION_ENABLED = 
"httpsSaslAuthenticationEnabled";
+
+    public static final String PLUGIN_NAME = "MANAGEMENT-HTTP";
+
     private static final Collection<String> AVAILABLE_ATTRIBUTES = new 
HashSet<String>(Plugin.AVAILABLE_ATTRIBUTES);
     static
     {
-        
AVAILABLE_ATTRIBUTES.add(HttpManagementFactory.HTTP_BASIC_AUTHENTICATION_ENABLED);
-        
AVAILABLE_ATTRIBUTES.add(HttpManagementFactory.HTTPS_BASIC_AUTHENTICATION_ENABLED);
-        
AVAILABLE_ATTRIBUTES.add(HttpManagementFactory.HTTP_SASL_AUTHENTICATION_ENABLED);
-        
AVAILABLE_ATTRIBUTES.add(HttpManagementFactory.HTTPS_SASL_AUTHENTICATION_ENABLED);
-        AVAILABLE_ATTRIBUTES.add(HttpManagementFactory.TIME_OUT);
-        AVAILABLE_ATTRIBUTES.add(HttpManagementFactory.PLUGIN_TYPE);
+        AVAILABLE_ATTRIBUTES.add(HTTP_BASIC_AUTHENTICATION_ENABLED);
+        AVAILABLE_ATTRIBUTES.add(HTTPS_BASIC_AUTHENTICATION_ENABLED);
+        AVAILABLE_ATTRIBUTES.add(HTTP_SASL_AUTHENTICATION_ENABLED);
+        AVAILABLE_ATTRIBUTES.add(HTTPS_SASL_AUTHENTICATION_ENABLED);
+        AVAILABLE_ATTRIBUTES.add(TIME_OUT);
+        AVAILABLE_ATTRIBUTES.add(PluginFactory.PLUGIN_TYPE);
     }
 
-
     public static final String ENTRY_POINT_PATH = "/management";
 
     private static final String OPERATIONAL_LOGGING_NAME = "Web";
 
+    protected static final boolean DEFAULT_HTTP_BASIC_AUTHENTICATION_ENABLED = 
false;
+    protected static final boolean DEFAULT_HTTPS_BASIC_AUTHENTICATION_ENABLED 
= true;
+    protected static final boolean DEFAULT_HTTP_SASL_AUTHENTICATION_ENABLED = 
true;
+    protected static final boolean DEFAULT_HTTPS_SASL_AUTHENTICATION_ENABLED = 
true;
+
+    @SuppressWarnings("serial")
+    public static final Map<String, Object> DEFAULTS = new HashMap<String, 
Object>()
+            {{
+                put(HTTP_BASIC_AUTHENTICATION_ENABLED, 
DEFAULT_HTTP_BASIC_AUTHENTICATION_ENABLED);
+                put(HTTPS_BASIC_AUTHENTICATION_ENABLED, 
DEFAULT_HTTPS_BASIC_AUTHENTICATION_ENABLED);
+                put(HTTP_SASL_AUTHENTICATION_ENABLED, 
DEFAULT_HTTP_SASL_AUTHENTICATION_ENABLED);
+                put(HTTPS_SASL_AUTHENTICATION_ENABLED, 
DEFAULT_HTTPS_SASL_AUTHENTICATION_ENABLED);
+            }};
+
     private final Broker _broker;
 
     private Server _server;
 
     private final HttpConfiguration _configuration;
 
-    public HttpManagement(UUID id, Broker broker, HttpConfiguration 
configuration, Map<String, Object> defaults)
+    public HttpManagement(UUID id, Broker broker, HttpConfiguration 
configuration)
     {
-        super(id, defaults);
+        super(id, DEFAULTS, null);
         _broker = broker;
         _configuration = configuration;
         addParent(Broker.class, broker);
@@ -357,29 +385,29 @@ public class HttpManagement extends Abst
     @Override
     public Object getAttribute(String name)
     {
-        
if(HttpManagementFactory.HTTP_BASIC_AUTHENTICATION_ENABLED.equals(name))
+        if(HTTP_BASIC_AUTHENTICATION_ENABLED.equals(name))
         {
             return _configuration.isHttpBasicAuthenticationEnabled();
         }
-        else 
if(HttpManagementFactory.HTTPS_BASIC_AUTHENTICATION_ENABLED.equals(name))
+        else if(HTTPS_BASIC_AUTHENTICATION_ENABLED.equals(name))
         {
             return _configuration.isHttpsBasicAuthenticationEnabled();
         }
-        else 
if(HttpManagementFactory.HTTP_SASL_AUTHENTICATION_ENABLED.equals(name))
+        else if(HTTP_SASL_AUTHENTICATION_ENABLED.equals(name))
         {
             return _configuration.isHttpSaslAuthenticationEnabled();
         }
-        else 
if(HttpManagementFactory.HTTPS_SASL_AUTHENTICATION_ENABLED.equals(name))
+        else if(HTTPS_SASL_AUTHENTICATION_ENABLED.equals(name))
         {
             return _configuration.isHttpSaslAuthenticationEnabled();
         }
-        else if(HttpManagementFactory.TIME_OUT.equals(name))
+        else if(TIME_OUT.equals(name))
         {
             return _configuration.getSessionTimeout();
         }
-        else if(HttpManagementFactory.PLUGIN_TYPE.equals(name))
+        else if(PluginFactory.PLUGIN_TYPE.equals(name))
         {
-            return HttpManagementFactory.PLUGIN_NAME;
+            return PLUGIN_NAME;
         }
         return super.getAttribute(name);
     }

Modified: 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementFactory.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementFactory.java?rev=1435277&r1=1435276&r2=1435277&view=diff
==============================================================================
--- 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementFactory.java
 (original)
+++ 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/HttpManagementFactory.java
 Fri Jan 18 17:55:53 2013
@@ -18,6 +18,7 @@
  */
 package org.apache.qpid.server.management.plugin;
 
+import static org.apache.qpid.server.management.plugin.HttpManagement.*;
 import static 
org.apache.qpid.server.util.MapValueConverter.getBooleanAttribute;
 import static 
org.apache.qpid.server.util.MapValueConverter.getIntegerAttribute;
 import static org.apache.qpid.server.util.MapValueConverter.getStringAttribute;
@@ -31,18 +32,6 @@ import org.apache.qpid.server.plugin.Plu
 
 public class HttpManagementFactory implements PluginFactory
 {
-    // 10 minutes by default
-    private static final int DEFAULT_TIMEOUT_IN_SECONDS = 60 * 10;
-
-    public static final String TIME_OUT = "sessionTimeout";
-    public static final String KEY_STORE_PATH = "keyStorePath";
-    public static final String KEY_STORE_PASSWORD = "keyStorePassword";
-    public static final String HTTP_BASIC_AUTHENTICATION_ENABLED = 
"httpBasicAuthenticationEnabled";
-    public static final String HTTPS_BASIC_AUTHENTICATION_ENABLED = 
"httpsBasicAuthenticationEnabled";
-    public static final String HTTP_SASL_AUTHENTICATION_ENABLED = 
"httpSaslAuthenticationEnabled";
-    public static final String HTTPS_SASL_AUTHENTICATION_ENABLED = 
"httpsSaslAuthenticationEnabled";
-
-    public static final String PLUGIN_NAME = "MANAGEMENT-HTTP";
 
     @Override
     public Plugin createInstance(UUID id, Map<String, Object> attributes, 
Broker broker)
@@ -61,8 +50,7 @@ public class HttpManagementFactory imple
                 getStringAttribute(KEY_STORE_PATH, attributes, null),
                 getStringAttribute(KEY_STORE_PASSWORD, attributes, null)
                 );
-        //TODO: create defaults
-        Map<String, Object> defaults = null;
-        return new HttpManagement( id, broker, configuration, defaults);
+
+        return new HttpManagement( id, broker, configuration);
     }
 }

Modified: 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/HttpManagementFactoryTest.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/HttpManagementFactoryTest.java?rev=1435277&r1=1435276&r2=1435277&view=diff
==============================================================================
--- 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/HttpManagementFactoryTest.java
 (original)
+++ 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-http/src/test/java/org/apache/qpid/server/management/plugin/HttpManagementFactoryTest.java
 Fri Jan 18 17:55:53 2013
@@ -51,8 +51,8 @@ public class HttpManagementFactoryTest e
 
     public void testCreateInstanceWithoutKeystore() throws Exception
     {
-        _attributes.put(PluginFactory.PLUGIN_TYPE, 
HttpManagementFactory.PLUGIN_NAME);
-        _attributes.put(HttpManagementFactory.TIME_OUT, SESSION_TIMEOUT);
+        _attributes.put(PluginFactory.PLUGIN_TYPE, HttpManagement.PLUGIN_NAME);
+        _attributes.put(HttpManagement.TIME_OUT, SESSION_TIMEOUT);
 
         HttpManagement management = (HttpManagement) 
_pluginFactory.createInstance(_id, _attributes, _broker);
 
@@ -64,10 +64,10 @@ public class HttpManagementFactoryTest e
 
     public void testCreateInstanceWithKeystore() throws Exception
     {
-        _attributes.put(PluginFactory.PLUGIN_TYPE, 
HttpManagementFactory.PLUGIN_NAME);
-        _attributes.put(HttpManagementFactory.KEY_STORE_PASSWORD, 
KEY_STORE_PASSWORD);
-        _attributes.put(HttpManagementFactory.KEY_STORE_PATH, KEY_STORE_PATH);
-        _attributes.put(HttpManagementFactory.TIME_OUT, SESSION_TIMEOUT);
+        _attributes.put(PluginFactory.PLUGIN_TYPE, HttpManagement.PLUGIN_NAME);
+        _attributes.put(HttpManagement.KEY_STORE_PASSWORD, KEY_STORE_PASSWORD);
+        _attributes.put(HttpManagement.KEY_STORE_PATH, KEY_STORE_PATH);
+        _attributes.put(HttpManagement.TIME_OUT, SESSION_TIMEOUT);
 
         HttpManagement management = (HttpManagement) 
_pluginFactory.createInstance(_id, _attributes, _broker);
 

Modified: 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagedObjectRegistry.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagedObjectRegistry.java?rev=1435277&r1=1435276&r2=1435277&view=diff
==============================================================================
--- 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagedObjectRegistry.java
 (original)
+++ 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagedObjectRegistry.java
 Fri Jan 18 17:55:53 2013
@@ -21,6 +21,7 @@
 package org.apache.qpid.server.jmx;
 
 import org.apache.log4j.Logger;
+import org.apache.qpid.server.configuration.BrokerProperties;
 import org.apache.qpid.server.configuration.IllegalConfigurationException;
 import org.apache.qpid.server.logging.actors.CurrentActor;
 import org.apache.qpid.server.logging.messages.ManagementConsoleMessages;
@@ -64,8 +65,6 @@ import java.util.HashMap;
  */
 public class JMXManagedObjectRegistry implements ManagedObjectRegistry
 {
-    public static final String USE_CUSTOM_RMI_SOCKET_FACTORY = 
"qpid.use_custom_rmi_socket_factory";
-
     private static final Logger _log = 
Logger.getLogger(JMXManagedObjectRegistry.class);
 
     private static final String OPERATIONAL_LOGGING_NAME = "JMX";
@@ -79,24 +78,21 @@ public class JMXManagedObjectRegistry im
     private final Port _registryPort;
     private final Port _connectorPort;
 
-    private final JMXConfiguration _jmxConfiguration;
-
-    public JMXManagedObjectRegistry(
+     public JMXManagedObjectRegistry(
             Broker broker,
             Port connectorPort, Port registryPort,
-            JMXConfiguration jmxConfiguration)
+            JMXManagement jmxManagement)
     {
         _broker = broker;
         _registryPort = registryPort;
         _connectorPort = connectorPort;
 
-        boolean platformServer = jmxConfiguration.isPlatformMBeanServer();
+        boolean usePlatformServer = 
(Boolean)jmxManagement.getAttribute(JMXManagement.USE_PLATFORM_MBEAN_SERVER);
 
         _mbeanServer =
-                platformServer ? ManagementFactory.getPlatformMBeanServer()
+                usePlatformServer ? ManagementFactory.getPlatformMBeanServer()
                 : MBeanServerFactory.createMBeanServer(ManagedObject.DOMAIN);
-        _jmxConfiguration = jmxConfiguration;
-    }
+     }
 
     @Override
     public void start() throws IOException
@@ -126,24 +122,15 @@ public class JMXManagedObjectRegistry im
 
         if (connectorSslEnabled)
         {
-            String managementKeyStorePath = 
_jmxConfiguration.getManagementKeyStorePath();
-            String managementKeyStorePassword = 
_jmxConfiguration.getManagementKeyStorePath();
-
-            //set the SSL related system properties used by the SSL RMI socket 
factories to the values
-            //given in the configuration file
-            checkKeyStorePathExistsAndIsReadable(managementKeyStorePath );
+            checkKeyStorePathExistsAndIsReadable();
 
-            
CurrentActor.get().message(ManagementConsoleMessages.SSL_KEYSTORE(managementKeyStorePath));
+            
CurrentActor.get().message(ManagementConsoleMessages.SSL_KEYSTORE(System.getProperty("javax.net.ssl.keyStore")));
 
-            if (managementKeyStorePassword == null)
+            if (System.getProperty("javax.net.ssl.keyStorePassword") == null)
             {
                 throw new IllegalConfigurationException(
                         "JMX management SSL keystore password not defined, 
unable to start requested SSL protected JMX server");
             }
-            else
-            {
-               System.setProperty("javax.net.ssl.keyStorePassword", 
managementKeyStorePassword);
-            }
 
             //create the SSL RMI socket factories
             csf = new SslRMIClientSocketFactory();
@@ -165,7 +152,7 @@ public class JMXManagedObjectRegistry im
         connectorEnv.put(JMXConnectorServer.AUTHENTICATOR, rmipa);
 
         System.setProperty("java.rmi.server.randomIDs", "true");
-        boolean useCustomSocketFactory = 
Boolean.parseBoolean(System.getProperty(USE_CUSTOM_RMI_SOCKET_FACTORY, 
Boolean.TRUE.toString()));
+        boolean useCustomSocketFactory = 
Boolean.parseBoolean(System.getProperty(BrokerProperties.PROPERTY_USE_CUSTOM_RMI_SOCKET_FACTORY,
 Boolean.TRUE.toString()));
 
         /*
          * Start a RMI registry on the management port, to hold the JMX RMI 
ConnectorServer stub.
@@ -242,7 +229,7 @@ public class JMXManagedObjectRegistry im
         };
 
         //Add the custom invoker as an MBeanServerForwarder, and start the 
RMIConnectorServer.
-        MBeanServerForwarder mbsf = 
MBeanInvocationHandlerImpl.newProxyInstance(_broker, _jmxConfiguration);
+        MBeanServerForwarder mbsf = 
MBeanInvocationHandlerImpl.newProxyInstance(_broker);
         _cs.setMBeanServerForwarder(mbsf);
 
         // Install a ManagementLogonLogoffReporter so we can report as users 
logon/logoff
@@ -278,20 +265,17 @@ public class JMXManagedObjectRegistry im
         return rmiRegistry;
     }
 
-    private void checkKeyStorePathExistsAndIsReadable(String keyStorePath) 
throws FileNotFoundException
+    private void checkKeyStorePathExistsAndIsReadable() throws 
FileNotFoundException
     {
-        //check the keystore path value is valid
+        String keyStorePath = System.getProperty("javax.net.ssl.keyStore");
+
         if (keyStorePath == null)
         {
             throw new IllegalConfigurationException(
-                    "JMX management SSL keystore path not defined, unable to 
start SSL protected JMX ConnectorServer");
+                    "JVM system proprty 'javax.net.ssl.keyStore' is not set, 
unable to start SSL protected JMX ConnectorServer");
         }
         else
         {
-            //ensure the system property is set (for use by 
SslRMIClientSocketFactory and SslRMIServerSocketFactory)
-            System.setProperty("javax.net.ssl.keyStore", keyStorePath);
-
-            //check the file is usable
             File ksf = new File(keyStorePath);
 
             if (!ksf.exists())

Modified: 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagement.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagement.java?rev=1435277&r1=1435276&r2=1435277&view=diff
==============================================================================
--- 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagement.java
 (original)
+++ 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagement.java
 Fri Jan 18 17:55:53 2013
@@ -49,32 +49,55 @@ import org.apache.qpid.server.model.Prot
 import org.apache.qpid.server.model.State;
 import org.apache.qpid.server.model.VirtualHost;
 import org.apache.qpid.server.model.adapter.AbstractPluginAdapter;
+import org.apache.qpid.server.plugin.PluginFactory;
 import org.apache.qpid.server.plugin.QpidServiceLoader;
+import org.apache.qpid.server.util.MapValueConverter;
 
 public class JMXManagement extends AbstractPluginAdapter implements 
ConfigurationChangeListener
 {
     private static final Logger LOGGER = Logger.getLogger(JMXManagement.class);
 
-    private static final Collection<String> AVAILABLE_ATTRIBUTES = new 
HashSet<String>(Plugin.AVAILABLE_ATTRIBUTES);
-    static
-    {
-        
AVAILABLE_ATTRIBUTES.add(JMXManagementFactory.MANAGEMENT_RIGHTS_INFER_ALL_ACCESS);
-        AVAILABLE_ATTRIBUTES.add(JMXManagementFactory.PLUGIN_TYPE);
-        
AVAILABLE_ATTRIBUTES.add(JMXManagementFactory.USE_PLATFORM_MBEAN_SERVER);
-    }
+    public static final String PLUGIN_TYPE = "MANAGEMENT-JMX";
+
+    // attributes
+    public static final String USE_PLATFORM_MBEAN_SERVER = 
"usePlatformMBeanServer";
+    public static final String NAME = "name";
+
+    // default values
+    public static final String DEFAULT_NAME = "JMXManagement";
+    public static final boolean DEFAULT_USE_PLATFORM_MBEAN_SERVER = true;
+
+    @SuppressWarnings("serial")
+    private static final Collection<String> AVAILABLE_ATTRIBUTES = 
Collections.unmodifiableCollection(new 
HashSet<String>(Plugin.AVAILABLE_ATTRIBUTES){{
+        add(NAME);
+        add(USE_PLATFORM_MBEAN_SERVER);
+        add(PluginFactory.PLUGIN_TYPE);
+    }});
+
+    @SuppressWarnings("serial")
+    private static final Map<String, Object> DEFAULTS = new HashMap<String, 
Object>(){{
+        put(USE_PLATFORM_MBEAN_SERVER, DEFAULT_USE_PLATFORM_MBEAN_SERVER);
+        put(NAME, DEFAULT_NAME);
+        put(PluginFactory.PLUGIN_TYPE, PLUGIN_TYPE);
+    }};
+
+    @SuppressWarnings("serial")
+    private static final Map<String, Class<?>> ATTRIBUTE_TYPES = new 
HashMap<String, Class<?>>(){{
+        put(USE_PLATFORM_MBEAN_SERVER, Boolean.class);
+        put(NAME, String.class);
+        put(PluginFactory.PLUGIN_TYPE, String.class);
+    }};
 
     private final Broker _broker;
     private JMXManagedObjectRegistry _objectRegistry;
 
     private final Map<ConfiguredObject, AMQManagedObject> _children = new 
HashMap<ConfiguredObject, AMQManagedObject>();
 
-    private final JMXConfiguration _jmxConfiguration;
-
-    public JMXManagement(UUID id, Broker broker, JMXConfiguration 
jmxConfiguration, Map<String, Object> defaults)
+    public JMXManagement(UUID id, Broker broker, Map<String, Object> 
attributes)
     {
-        super(id, defaults);
+        super(id, DEFAULTS, MapValueConverter.convert(attributes, 
ATTRIBUTE_TYPES));
         _broker = broker;
-        _jmxConfiguration = jmxConfiguration;
+        addParent(Broker.class, broker);
     }
 
     @Override
@@ -129,7 +152,7 @@ public class JMXManagement extends Abstr
             throw new IllegalStateException("No JMX RMI port found supporting 
protocol " + Protocol.RMI);
         }
 
-        _objectRegistry = new JMXManagedObjectRegistry(_broker, connectorPort, 
registryPort, _jmxConfiguration);
+        _objectRegistry = new JMXManagedObjectRegistry(_broker, connectorPort, 
registryPort, this);
 
         _broker.addChangeListener(this);
 
@@ -294,30 +317,13 @@ public class JMXManagement extends Abstr
     @Override
     public String getName()
     {
-        return "JMXManagement";
+        return (String)getAttribute(NAME);
     }
 
     @Override
     public Collection<String> getAttributeNames()
     {
-        return Collections.unmodifiableCollection(AVAILABLE_ATTRIBUTES);
+        return AVAILABLE_ATTRIBUTES;
     }
 
-    @Override
-    public Object getAttribute(String name)
-    {
-        
if(JMXManagementFactory.MANAGEMENT_RIGHTS_INFER_ALL_ACCESS.equals(name))
-        {
-            return _jmxConfiguration.isManagementRightsInferAllAccess();
-        }
-        else if(JMXManagementFactory.USE_PLATFORM_MBEAN_SERVER.equals(name))
-        {
-            return _jmxConfiguration.isPlatformMBeanServer();
-        }
-        else if(JMXManagementFactory.PLUGIN_TYPE.equals(name))
-        {
-            return JMXManagementFactory.PLUGIN_NAME;
-        }
-        return super.getAttribute(name);
-    }
 }

Modified: 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagementFactory.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagementFactory.java?rev=1435277&r1=1435276&r2=1435277&view=diff
==============================================================================
--- 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagementFactory.java
 (original)
+++ 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/JMXManagementFactory.java
 Fri Jan 18 17:55:53 2013
@@ -18,9 +18,6 @@
  */
 package org.apache.qpid.server.jmx;
 
-import static 
org.apache.qpid.server.util.MapValueConverter.getBooleanAttribute;
-import static org.apache.qpid.server.util.MapValueConverter.getStringAttribute;
-
 import java.util.Map;
 import java.util.UUID;
 
@@ -33,35 +30,16 @@ public class JMXManagementFactory implem
 {
     private static final Logger LOGGER = 
Logger.getLogger(JMXManagementFactory.class);
 
-    public static final String USE_PLATFORM_MBEAN_SERVER = 
"usePlatformMBeanServer";
-
-    //TODO: re-factor key store settings
-    public static final String KEY_STORE_PATH = "keyStorePath";
-    public static final String KEY_STORE_PASSWORD = "keyStorePassword";
-
-    //TODO: make it set via system property
-    public static final String MANAGEMENT_RIGHTS_INFER_ALL_ACCESS = 
"managementRightsInferAllAccess";
-
-    public static final String PLUGIN_NAME = "MANAGEMENT-JMX";
-
     @Override
     public Plugin createInstance(UUID id, Map<String, Object> attributes, 
Broker broker)
     {
-        if (PLUGIN_NAME.equals(attributes.get(PLUGIN_TYPE)))
+        if (JMXManagement.PLUGIN_TYPE.equals(attributes.get(PLUGIN_TYPE)))
         {
-            JMXConfiguration jmxConfiguration = new JMXConfiguration(
-                    getBooleanAttribute(USE_PLATFORM_MBEAN_SERVER, attributes, 
true),
-                    getStringAttribute(KEY_STORE_PATH, attributes, null),
-                    getStringAttribute(KEY_STORE_PASSWORD, attributes, null),
-                    getBooleanAttribute(MANAGEMENT_RIGHTS_INFER_ALL_ACCESS, 
attributes, true));
-
-            //TODO: create defaults
-            Map<String, Object> defaults = null;
-            return new JMXManagement(id, broker, jmxConfiguration, defaults);
+            return new JMXManagement(id, broker, attributes);
         }
         else
         {
-            if(LOGGER.isDebugEnabled())
+            if (LOGGER.isDebugEnabled())
             {
                 LOGGER.debug("Skipping registration of JMX plugin as JMX 
Management disabled in config.");
             }

Modified: 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/MBeanInvocationHandlerImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/MBeanInvocationHandlerImpl.java?rev=1435277&r1=1435276&r2=1435277&view=diff
==============================================================================
--- 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/MBeanInvocationHandlerImpl.java
 (original)
+++ 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/main/java/org/apache/qpid/server/jmx/MBeanInvocationHandlerImpl.java
 Fri Jan 18 17:55:53 2013
@@ -22,6 +22,7 @@ package org.apache.qpid.server.jmx;
 
 import org.apache.log4j.Logger;
 
+import org.apache.qpid.server.configuration.BrokerProperties;
 import org.apache.qpid.server.logging.actors.CurrentActor;
 import org.apache.qpid.server.logging.actors.ManagementActor;
 import org.apache.qpid.server.model.Broker;
@@ -62,16 +63,16 @@ public class MBeanInvocationHandlerImpl 
     private final boolean _managementRightsInferAllAccess;
     private final Broker _broker;
 
-    MBeanInvocationHandlerImpl(Broker broker, boolean 
managementRightsInferAllAccess)
+    MBeanInvocationHandlerImpl(Broker broker)
     {
-        _managementRightsInferAllAccess = managementRightsInferAllAccess;
+        _managementRightsInferAllAccess = 
Boolean.valueOf(System.getProperty(BrokerProperties.PROPERTY_MANAGEMENT_RIGHTS_INFER_ALL_ACCESS,
 "true"));
         _broker = broker;
         _logActor = new ManagementActor(broker.getRootMessageLogger());
     }
 
-    public static MBeanServerForwarder newProxyInstance(Broker broker, 
JMXConfiguration configuration)
+    public static MBeanServerForwarder newProxyInstance(Broker broker)
     {
-        final InvocationHandler handler = new 
MBeanInvocationHandlerImpl(broker, 
configuration.isManagementRightsInferAllAccess());
+        final InvocationHandler handler = new 
MBeanInvocationHandlerImpl(broker);
         final Class<?>[] interfaces = new Class[] { MBeanServerForwarder.class 
};
 
         Object proxy = 
Proxy.newProxyInstance(MBeanServerForwarder.class.getClassLoader(), interfaces, 
handler);

Modified: 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/test/java/org/apache/qpid/server/jmx/JMXManagementFactoryTest.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/test/java/org/apache/qpid/server/jmx/JMXManagementFactoryTest.java?rev=1435277&r1=1435276&r2=1435277&view=diff
==============================================================================
--- 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/test/java/org/apache/qpid/server/jmx/JMXManagementFactoryTest.java
 (original)
+++ 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker-plugins/management-jmx/src/test/java/org/apache/qpid/server/jmx/JMXManagementFactoryTest.java
 Fri Jan 18 17:55:53 2013
@@ -37,11 +37,14 @@ public class JMXManagementFactoryTest ex
 
     public void testJMXConfigured() throws Exception
     {
-        _attributes.put(PluginFactory.PLUGIN_TYPE, 
JMXManagementFactory.PLUGIN_NAME);
+        _attributes.put(PluginFactory.PLUGIN_TYPE, JMXManagement.PLUGIN_TYPE);
 
         JMXManagement jmxManagement = (JMXManagement) 
_jmxManagementFactory.createInstance(_id, _attributes, _broker);
 
         assertNotNull(jmxManagement);
+        assertEquals("Unexpected plugin type", JMXManagement.PLUGIN_TYPE, 
jmxManagement.getAttribute(JMXManagementFactory.PLUGIN_TYPE));
+        assertEquals("Unexpected default mbean platform", 
JMXManagement.DEFAULT_USE_PLATFORM_MBEAN_SERVER, 
jmxManagement.getAttribute(JMXManagement.USE_PLATFORM_MBEAN_SERVER));
+        assertEquals("Unexpected default name", JMXManagement.DEFAULT_NAME, 
jmxManagement.getAttribute(JMXManagement.NAME));
     }
 
     public void testCreateInstanceReturnsNullWhenPluginTypeMissing()

Modified: 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/BrokerProperties.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/BrokerProperties.java?rev=1435277&r1=1435276&r2=1435277&view=diff
==============================================================================
--- 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/BrokerProperties.java
 (original)
+++ 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/BrokerProperties.java
 Fri Jan 18 17:55:53 2013
@@ -23,6 +23,9 @@ public class BrokerProperties
     public static final String PROPERTY_BROKER_DEFAULT_AMQP_PROTOCOL_EXCLUDES 
= "qpid.broker_default_amqp_protocol_excludes";
     public static final String PROPERTY_BROKER_DEFAULT_AMQP_PROTOCOL_INCLUDES 
= "qpid.broker_default_amqp_protocol_includes";
 
+    public static final String PROPERTY_MANAGEMENT_RIGHTS_INFER_ALL_ACCESS = 
"qpid.broker_management_rights_infer_all_access";
+    public static final String PROPERTY_USE_CUSTOM_RMI_SOCKET_FACTORY = 
"qpid.broker_use_custom_rmi_socket_factory";
+
     private BrokerProperties()
     {
     }

Modified: 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java?rev=1435277&r1=1435276&r2=1435277&view=diff
==============================================================================
--- 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java
 (original)
+++ 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java
 Fri Jan 18 17:55:53 2013
@@ -55,7 +55,7 @@ public class ServerConfiguration extends
     public static final int DEFAULT_HTTPS_MANAGEMENT_PORT = 8443;
     public static final long DEFAULT_MINIMUM_ALERT_REPEAT_GAP = 30000l;
 
-    public static final String USE_CUSTOM_RMI_SOCKET_FACTORY = 
"qpid.use_custom_rmi_socket_factory";
+    public static final String USE_CUSTOM_RMI_SOCKET_FACTORY = 
BrokerProperties.PROPERTY_USE_CUSTOM_RMI_SOCKET_FACTORY;
 
     public static final String QPID_HOME = "QPID_HOME";
     public static final String QPID_WORK = "QPID_WORK";

Modified: 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/startup/GroupProviderRecoverer.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/startup/GroupProviderRecoverer.java?rev=1435277&r1=1435276&r2=1435277&view=diff
==============================================================================
--- 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/startup/GroupProviderRecoverer.java
 (original)
+++ 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/startup/GroupProviderRecoverer.java
 Fri Jan 18 17:55:53 2013
@@ -54,9 +54,7 @@ public class GroupProviderRecoverer impl
         {
             throw new IllegalConfigurationException("Cannot create 
GroupManager from attributes : " + attributes);
         }
-        //TODO: add defaults
-        Map<String, Object> defaults = null;
-        GroupProviderAdapter groupProviderAdapter = new 
GroupProviderAdapter(configurationEntry.getId(), groupManager, broker, 
defaults);
+        GroupProviderAdapter groupProviderAdapter = new 
GroupProviderAdapter(configurationEntry.getId(), groupManager, broker);
         return groupProviderAdapter;
     }
 

Modified: 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractPluginAdapter.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractPluginAdapter.java?rev=1435277&r1=1435276&r2=1435277&view=diff
==============================================================================
--- 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractPluginAdapter.java
 (original)
+++ 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/AbstractPluginAdapter.java
 Fri Jan 18 17:55:53 2013
@@ -35,9 +35,9 @@ import org.apache.qpid.server.model.Stat
 public abstract class AbstractPluginAdapter extends AbstractAdapter implements 
Plugin
 {
 
-    protected AbstractPluginAdapter(UUID id, Map<String, Object> defaults)
+    protected AbstractPluginAdapter(UUID id, Map<String, Object> defaults, 
Map<String, Object> attributes)
     {
-        super(id, defaults);
+        super(id, defaults, attributes);
     }
 
     @Override
@@ -122,10 +122,6 @@ public abstract class AbstractPluginAdap
         {
             return getId();
         }
-        else if (NAME.equals(name))
-        {
-            return getName();
-        }
         else if (STATE.equals(name))
         {
             return getActualState();

Modified: 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/GroupProviderAdapter.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/GroupProviderAdapter.java?rev=1435277&r1=1435276&r2=1435277&view=diff
==============================================================================
--- 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/GroupProviderAdapter.java
 (original)
+++ 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/model/adapter/GroupProviderAdapter.java
 Fri Jan 18 17:55:53 2013
@@ -47,9 +47,9 @@ public class GroupProviderAdapter extend
 {
     private final GroupManager _groupManager;
     private final Broker _broker;
-    public GroupProviderAdapter(UUID id, GroupManager groupManager, Broker 
broker, Map<String, Object> defaults)
+    public GroupProviderAdapter(UUID id, GroupManager groupManager, Broker 
broker)
     {
-        super(id, defaults);
+        super(id);
 
         if (groupManager == null)
         {

Modified: 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostImpl.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostImpl.java?rev=1435277&r1=1435276&r2=1435277&view=diff
==============================================================================
--- 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostImpl.java
 (original)
+++ 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostImpl.java
 Fri Jan 18 17:55:53 2013
@@ -146,15 +146,7 @@ public class VirtualHostImpl implements 
 
         _bindingFactory = new BindingFactory(this);
 
-        String storeType = hostConfig.getConfig().getString("store.type");
-        if (storeType == null)
-        {
-            _messageStore = 
initialiseMessageStore(hostConfig.getMessageStoreClass());
-        }
-        else
-        {
-            _messageStore = new 
MessageStoreCreator().createMessageStore(storeType);
-        }
+        _messageStore = initialiseMessageStore(hostConfig);
 
         configureMessageStore(hostConfig);
 
@@ -283,14 +275,29 @@ public class VirtualHostImpl implements 
         }
 
         final MessageStore messageStore = (MessageStore) o;
-        final MessageStoreLogSubject storeLogSubject = new 
MessageStoreLogSubject(this, clazz.getSimpleName());
+        return messageStore;
+    }
+
+    private MessageStore initialiseMessageStore(VirtualHostConfiguration 
hostConfig) throws Exception
+    {
+        String storeType = hostConfig.getConfig().getString("store.type");
+        MessageStore  messageStore = null;
+        if (storeType == null)
+        {
+            messageStore = 
initialiseMessageStore(hostConfig.getMessageStoreClass());
+        }
+        else
+        {
+            messageStore = new 
MessageStoreCreator().createMessageStore(storeType);
+        }
+
+        final MessageStoreLogSubject storeLogSubject = new 
MessageStoreLogSubject(this, messageStore.getClass().getSimpleName());
         OperationalLoggingListener.listen(messageStore, storeLogSubject);
 
         messageStore.addEventListener(new BeforeActivationListener(), 
Event.BEFORE_ACTIVATE);
         messageStore.addEventListener(new AfterActivationListener(), 
Event.AFTER_ACTIVATE);
         messageStore.addEventListener(new BeforeCloseListener(), 
Event.BEFORE_CLOSE);
         messageStore.addEventListener(new BeforePassivationListener(), 
Event.BEFORE_PASSIVATE);
-
         return messageStore;
     }
 

Modified: 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/resources/default.json
URL: 
http://svn.apache.org/viewvc/qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/resources/default.json?rev=1435277&r1=1435276&r2=1435277&view=diff
==============================================================================
--- 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/resources/default.json
 (original)
+++ 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/main/resources/default.json
 Fri Jan 18 17:55:53 2013
@@ -66,8 +66,6 @@
   }, {
     "type" : "Plugin",
     "pluginType" : "MANAGEMENT-JMX",
-    "name" : "jmxManagement",
-    "usePlatformMBeanServer" : true,
-    "managementRightsInferAllAccess" : true
+    "name" : "jmxManagement"
   } ]
 }
\ No newline at end of file

Modified: 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/test/java/org/apache/qpid/server/virtualhost/VirtualHostImplTest.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/test/java/org/apache/qpid/server/virtualhost/VirtualHostImplTest.java?rev=1435277&r1=1435276&r2=1435277&view=diff
==============================================================================
--- 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/test/java/org/apache/qpid/server/virtualhost/VirtualHostImplTest.java
 (original)
+++ 
qpid/branches/java-broker-config-qpid-4390/qpid/java/broker/src/test/java/org/apache/qpid/server/virtualhost/VirtualHostImplTest.java
 Fri Jan 18 17:55:53 2013
@@ -22,7 +22,9 @@ package org.apache.qpid.server.virtualho
 
 import static org.mockito.Mockito.mock;
 
+import org.apache.commons.configuration.Configuration;
 import org.apache.commons.configuration.ConfigurationException;
+import org.apache.commons.configuration.PropertiesConfiguration;
 
 import org.apache.qpid.server.configuration.VirtualHostConfiguration;
 
@@ -122,6 +124,14 @@ public class VirtualHostImplTest extends
         assertEquals(State.ACTIVE, vhost.getState());
     }
 
+    public void testVirtualHostHavingStoreSetAsTypeBecomesActive() throws 
Exception
+    {
+        String virtualHostName = getName();
+        VirtualHost host = createVirtualHostUsingStoreType(virtualHostName);
+        assertNotNull(host);
+        assertEquals(State.ACTIVE, host.getState());
+    }
+
     public void testVirtualHostBecomesStoppedOnClose() throws Exception
     {
         File config = writeConfigFile(getName(), getName(), getName() 
+".direct", false, new String[0]);
@@ -133,6 +143,17 @@ public class VirtualHostImplTest extends
         assertEquals(0, vhost.getHouseKeepingActiveCount());
     }
 
+    public void testVirtualHostHavingStoreSetAsTypeBecomesStoppedOnClose() 
throws Exception
+    {
+        String virtualHostName = getName();
+        VirtualHost host = createVirtualHostUsingStoreType(virtualHostName);
+        assertNotNull(host);
+        assertEquals(State.ACTIVE, host.getState());
+        host.close();
+        assertEquals(State.STOPPED, host.getState());
+        assertEquals(0, host.getHouseKeepingActiveCount());
+    }
+
     /**
      * Tests that specifying an unknown exchange to bind the queue to results 
in failure to create the vhost
      */
@@ -265,4 +286,17 @@ public class VirtualHostImplTest extends
 
         return tmpFile;
     }
+
+    private VirtualHost createVirtualHostUsingStoreType(String 
virtualHostName) throws ConfigurationException, Exception
+    {
+        Broker broker = BrokerTestHelper.createBrokerMock();
+        _virtualHostRegistry = broker.getVirtualHostRegistry();
+
+        Configuration config = new PropertiesConfiguration();
+        config.setProperty("store.type", MemoryMessageStore.TYPE);
+        VirtualHostConfiguration configuration = new  
VirtualHostConfiguration(virtualHostName, config, broker);
+        VirtualHost host = new VirtualHostImpl(_virtualHostRegistry, 
mock(StatisticsGatherer.class), new SecurityManager(null), configuration);
+        _virtualHostRegistry.registerVirtualHost(host);
+        return host;
+    }
 }

Modified: 
qpid/branches/java-broker-config-qpid-4390/qpid/java/systests/src/main/java/org/apache/qpid/systest/management/jmx/ManagementLoggingTest.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/java-broker-config-qpid-4390/qpid/java/systests/src/main/java/org/apache/qpid/systest/management/jmx/ManagementLoggingTest.java?rev=1435277&r1=1435276&r2=1435277&view=diff
==============================================================================
--- 
qpid/branches/java-broker-config-qpid-4390/qpid/java/systests/src/main/java/org/apache/qpid/systest/management/jmx/ManagementLoggingTest.java
 (original)
+++ 
qpid/branches/java-broker-config-qpid-4390/qpid/java/systests/src/main/java/org/apache/qpid/systest/management/jmx/ManagementLoggingTest.java
 Fri Jan 18 17:55:53 2013
@@ -21,6 +21,7 @@
 package org.apache.qpid.systest.management.jmx;
 
 
+import org.apache.qpid.server.configuration.BrokerProperties;
 import org.apache.qpid.server.configuration.ServerConfiguration;
 import org.apache.qpid.server.logging.AbstractTestLogging;
 import org.apache.qpid.test.utils.JMXTestUtils;
@@ -266,7 +267,7 @@ public class ManagementLoggingTest exten
     {
         if (isJavaBroker())
         {
-            setSystemProperty("qpid.use_custom_rmi_socket_factory", "false");
+            
setSystemProperty(BrokerProperties.PROPERTY_USE_CUSTOM_RMI_SOCKET_FACTORY, 
"false");
             startBrokerAndCreateMonitor(true, false);
 
             final JMXTestUtils jmxUtils = new JMXTestUtils(this);

Modified: 
qpid/branches/java-broker-config-qpid-4390/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/java-broker-config-qpid-4390/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java?rev=1435277&r1=1435276&r2=1435277&view=diff
==============================================================================
--- 
qpid/branches/java-broker-config-qpid-4390/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java
 (original)
+++ 
qpid/branches/java-broker-config-qpid-4390/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java
 Fri Jan 18 17:55:53 2013
@@ -61,6 +61,7 @@ import org.apache.qpid.server.BrokerLaun
 import org.apache.qpid.server.BrokerOptions;
 import org.apache.qpid.server.ProtocolExclusion;
 import org.apache.qpid.server.ProtocolInclusion;
+import org.apache.qpid.server.configuration.BrokerProperties;
 import org.apache.qpid.server.configuration.ServerConfiguration;
 import org.apache.qpid.server.protocol.AmqpProtocolVersion;
 import org.apache.qpid.server.store.MessageStoreConstants;
@@ -394,7 +395,7 @@ public class QpidBrokerTestCase extends 
 
         if (_brokerType.equals(BrokerType.INTERNAL) && 
!existingInternalBroker())
         {
-            setSystemProperty("qpid.use_custom_rmi_socket_factory", "false");
+            
setSystemProperty(BrokerProperties.PROPERTY_USE_CUSTOM_RMI_SOCKET_FACTORY, 
"false");
             testConfig = saveTestConfiguration(port, testConfiguration);
             _logger.info("Set test.config property to: " + testConfig);
             _logger.info("Set test.virtualhosts property to: " + 
virtualHostsConfig);



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to