You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by rg...@apache.org on 2014/04/13 10:49:34 UTC
svn commit: r1586938 - in /qpid/trunk/qpid/java:
broker-core/src/main/java/org/apache/qpid/server/
broker-core/src/main/java/org/apache/qpid/server/model/
broker-core/src/main/resources/
broker-core/src/test/java/org/apache/qpid/server/ broker/src/test...
Author: rgodfrey
Date: Sun Apr 13 08:49:34 2014
New Revision: 1586938
URL: http://svn.apache.org/r1586938
Log:
QPID-5687 : [Java Broker] fix the initial config store to use "type" not "pluginType", add a test that checks the broker will startup with no config store. Change the handling of ${amqp.qpid_port} and friends to allow setting through system properties
Modified:
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/BrokerOptions.java
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java
qpid/trunk/qpid/java/broker-core/src/main/resources/initial-config.json
qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/BrokerOptionsTest.java
qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/MainTest.java
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/server/BrokerStartupTest.java
qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java
Modified: qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/BrokerOptions.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/BrokerOptions.java?rev=1586938&r1=1586937&r2=1586938&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/BrokerOptions.java (original)
+++ qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/BrokerOptions.java Sun Apr 13 08:49:34 2014
@@ -48,15 +48,6 @@ public class BrokerOptions
* set in the "QPID_HOME" system property if that was set, or remains unset if it was not.
*/
public static final String QPID_HOME_DIR = "qpid.home_dir";
- public static final String QPID_AMQP_PORT = "qpid.amqp_port";
- public static final String QPID_HTTP_PORT = "qpid.http_port";
- public static final String QPID_RMI_PORT = "qpid.rmi_port";
- public static final String QPID_JMX_PORT = "qpid.jmx_port";
-
- public static final String DEFAULT_AMQP_PORT_NUMBER = "5672";
- public static final String DEFAULT_HTTP_PORT_NUMBER = "8080";
- public static final String DEFAULT_RMI_PORT_NUMBER = "8999";
- public static final String DEFAULT_JMX_PORT_NUMBER = "9099";
public static final String DEFAULT_INITIAL_CONFIG_NAME = "initial-config.json";
public static final String DEFAULT_STORE_TYPE = "json";
@@ -307,10 +298,6 @@ public class BrokerOptions
ConcurrentHashMap<String, String> properties = new ConcurrentHashMap<String,String>();
properties.putAll(_configProperties);
- properties.putIfAbsent(QPID_AMQP_PORT, String.valueOf(DEFAULT_AMQP_PORT_NUMBER));
- properties.putIfAbsent(QPID_HTTP_PORT, String.valueOf(DEFAULT_HTTP_PORT_NUMBER));
- properties.putIfAbsent(QPID_RMI_PORT, String.valueOf(DEFAULT_RMI_PORT_NUMBER));
- properties.putIfAbsent(QPID_JMX_PORT, String.valueOf(DEFAULT_JMX_PORT_NUMBER));
properties.putIfAbsent(QPID_WORK_DIR, getWorkDir());
String homeDir = getHomeDir();
Modified: qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java?rev=1586938&r1=1586937&r2=1586938&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java (original)
+++ qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/Broker.java Sun Apr 13 08:49:34 2014
@@ -59,9 +59,24 @@ public interface Broker<X extends Broker
String CONNECTION_HEART_BEAT_DELAY = "connection.heartBeatDelay";
String CONNECTION_CLOSE_WHEN_NO_ROUTE = "connection.closeWhenNoRoute";
+
+ String QPID_AMQP_PORT = "qpid.amqp_port";
+ String QPID_HTTP_PORT = "qpid.http_port";
+ String QPID_RMI_PORT = "qpid.rmi_port";
+ String QPID_JMX_PORT = "qpid.jmx_port";
+
@ManagedContextDefault(name = "broker.name")
static final String DEFAULT_BROKER_NAME = "Broker";
+ @ManagedContextDefault(name = QPID_AMQP_PORT)
+ public static final String DEFAULT_AMQP_PORT_NUMBER = "5672";
+ @ManagedContextDefault(name = QPID_HTTP_PORT)
+ public static final String DEFAULT_HTTP_PORT_NUMBER = "8080";
+ @ManagedContextDefault(name = QPID_RMI_PORT)
+ public static final String DEFAULT_RMI_PORT_NUMBER = "8999";
+ @ManagedContextDefault(name = QPID_JMX_PORT)
+ public static final String DEFAULT_JMX_PORT_NUMBER = "9099";
+
@ManagedAttribute( derived = true )
String getBuildVersion();
Modified: qpid/trunk/qpid/java/broker-core/src/main/resources/initial-config.json
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/main/resources/initial-config.json?rev=1586938&r1=1586937&r2=1586938&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker-core/src/main/resources/initial-config.json (original)
+++ qpid/trunk/qpid/java/broker-core/src/main/resources/initial-config.json Sun Apr 13 08:49:34 2014
@@ -61,10 +61,10 @@
}
} ],
"plugins" : [ {
- "pluginType" : "MANAGEMENT-HTTP",
+ "type" : "MANAGEMENT-HTTP",
"name" : "httpManagement"
}, {
- "pluginType" : "MANAGEMENT-JMX",
+ "type" : "MANAGEMENT-JMX",
"name" : "jmxManagement"
} ]
}
Modified: qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/BrokerOptionsTest.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/BrokerOptionsTest.java?rev=1586938&r1=1586937&r2=1586938&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/BrokerOptionsTest.java (original)
+++ qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/BrokerOptionsTest.java Sun Apr 13 08:49:34 2014
@@ -227,13 +227,8 @@ public class BrokerOptionsTest extends Q
Map<String,String> props = _options.getConfigProperties();
- assertEquals("unexpected number of entries", 5, props.keySet().size());
+ assertEquals("unexpected number of entries", 1, props.keySet().size());
- assertEquals(BrokerOptions.DEFAULT_AMQP_PORT_NUMBER, props.get(BrokerOptions.QPID_AMQP_PORT));
- assertEquals(BrokerOptions.DEFAULT_HTTP_PORT_NUMBER, props.get(BrokerOptions.QPID_HTTP_PORT));
- assertEquals(BrokerOptions.DEFAULT_RMI_PORT_NUMBER, props.get(BrokerOptions.QPID_RMI_PORT));
- assertEquals(BrokerOptions.DEFAULT_JMX_PORT_NUMBER, props.get(BrokerOptions.QPID_JMX_PORT));
- assertEquals(BrokerOptions.DEFAULT_JMX_PORT_NUMBER, props.get(BrokerOptions.QPID_JMX_PORT));
assertTrue(props.containsKey(BrokerOptions.QPID_WORK_DIR));
assertFalse(props.containsKey(BrokerOptions.QPID_HOME_DIR));
}
@@ -268,7 +263,7 @@ public class BrokerOptionsTest extends Q
setTestSystemProperty("QPID_HOME", qpidHome);
assertEquals (qpidHome, _options.getConfigProperties().get(BrokerOptions.QPID_HOME_DIR));
- assertEquals("unexpected number of entries", 6, _options.getConfigProperties().keySet().size());
+ assertEquals("unexpected number of entries", 2, _options.getConfigProperties().keySet().size());
}
public void testDefaultHomeDirWithoutQpidHome()
@@ -277,7 +272,7 @@ public class BrokerOptionsTest extends Q
assertNull(_options.getConfigProperties().get(BrokerOptions.QPID_HOME_DIR));
assertFalse(_options.getConfigProperties().containsKey(BrokerOptions.QPID_HOME_DIR));
- assertEquals("unexpected number of entries", 5, _options.getConfigProperties().keySet().size());
+ assertEquals("unexpected number of entries", 1, _options.getConfigProperties().keySet().size());
}
public void testOverriddenHomeDir()
@@ -285,7 +280,7 @@ public class BrokerOptionsTest extends Q
final String testHomeDir = "/my/test/home/dir";
_options.setConfigProperty(BrokerOptions.QPID_HOME_DIR, testHomeDir);
assertEquals(testHomeDir, _options.getConfigProperties().get(BrokerOptions.QPID_HOME_DIR));
- assertEquals("unexpected number of entries", 6, _options.getConfigProperties().keySet().size());
+ assertEquals("unexpected number of entries", 2, _options.getConfigProperties().keySet().size());
}
public void testSetDefaultConfigProperties()
@@ -295,35 +290,23 @@ public class BrokerOptionsTest extends Q
setTestSystemProperty("QPID_WORK", null);
setTestSystemProperty("QPID_HOME", null);
- String oldPort = BrokerOptions.DEFAULT_AMQP_PORT_NUMBER;
String newPort = "12345";
//set a new value for a previously defaulted port number property
- _options.setConfigProperty(BrokerOptions.QPID_AMQP_PORT, newPort);
+ _options.setConfigProperty(org.apache.qpid.server.model.Broker.QPID_AMQP_PORT, newPort);
Map<String,String> props = _options.getConfigProperties();
- assertEquals("unexpected number of entries", 5, props.keySet().size());
- assertEquals(newPort, props.get(BrokerOptions.QPID_AMQP_PORT));
- assertEquals(BrokerOptions.DEFAULT_HTTP_PORT_NUMBER, props.get(BrokerOptions.QPID_HTTP_PORT));
- assertEquals(BrokerOptions.DEFAULT_RMI_PORT_NUMBER, props.get(BrokerOptions.QPID_RMI_PORT));
- assertEquals(BrokerOptions.DEFAULT_JMX_PORT_NUMBER, props.get(BrokerOptions.QPID_JMX_PORT));
+ assertEquals("unexpected number of entries", 2, props.keySet().size());
+ assertEquals(newPort, props.get(org.apache.qpid.server.model.Broker.QPID_AMQP_PORT));
//clear the value to ensure the default returns
- _options.setConfigProperty(BrokerOptions.QPID_AMQP_PORT, null);
+ _options.setConfigProperty(org.apache.qpid.server.model.Broker.QPID_AMQP_PORT, null);
props = _options.getConfigProperties();
- assertEquals("unexpected number of entries", 5, props.keySet().size());
- assertEquals(oldPort, props.get(BrokerOptions.QPID_AMQP_PORT));
- assertEquals(BrokerOptions.DEFAULT_HTTP_PORT_NUMBER, props.get(BrokerOptions.QPID_HTTP_PORT));
- assertEquals(BrokerOptions.DEFAULT_RMI_PORT_NUMBER, props.get(BrokerOptions.QPID_RMI_PORT));
- assertEquals(BrokerOptions.DEFAULT_JMX_PORT_NUMBER, props.get(BrokerOptions.QPID_JMX_PORT));
+ assertEquals("unexpected number of entries", 1, props.keySet().size());
//set a user specified property
_options.setConfigProperty("name", "value");
props = _options.getConfigProperties();
- assertEquals("unexpected number of entries", 6, props.keySet().size());
- assertEquals(oldPort, props.get(BrokerOptions.QPID_AMQP_PORT));
- assertEquals(BrokerOptions.DEFAULT_HTTP_PORT_NUMBER, props.get(BrokerOptions.QPID_HTTP_PORT));
- assertEquals(BrokerOptions.DEFAULT_RMI_PORT_NUMBER, props.get(BrokerOptions.QPID_RMI_PORT));
- assertEquals(BrokerOptions.DEFAULT_JMX_PORT_NUMBER, props.get(BrokerOptions.QPID_JMX_PORT));
+ assertEquals("unexpected number of entries", 2, props.keySet().size());
assertEquals("value", props.get("name"));
}
}
Modified: qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/MainTest.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/MainTest.java?rev=1586938&r1=1586937&r2=1586938&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/MainTest.java (original)
+++ qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/MainTest.java Sun Apr 13 08:49:34 2014
@@ -203,20 +203,20 @@ public class MainTest extends QpidTestCa
{
//short name
String newPort = "12345";
- BrokerOptions options = startDummyMain("-prop name=value -prop " + BrokerOptions.QPID_AMQP_PORT + "=" + newPort);
+ BrokerOptions options = startDummyMain("-prop name=value -prop " + org.apache.qpid.server.model.Broker.QPID_AMQP_PORT + "=" + newPort);
Map<String, String> props = options.getConfigProperties();
- assertEquals(newPort, props.get(BrokerOptions.QPID_AMQP_PORT));
+ assertEquals(newPort, props.get(org.apache.qpid.server.model.Broker.QPID_AMQP_PORT));
assertEquals("value", props.get("name"));
//long name
newPort = "678910";
- options = startDummyMain("--config-property name2=value2 --config-property " + BrokerOptions.QPID_AMQP_PORT + "=" + newPort);
+ options = startDummyMain("--config-property name2=value2 --config-property " + org.apache.qpid.server.model.Broker.QPID_AMQP_PORT + "=" + newPort);
props = options.getConfigProperties();
- assertEquals(newPort, props.get(BrokerOptions.QPID_AMQP_PORT));
+ assertEquals(newPort, props.get(org.apache.qpid.server.model.Broker.QPID_AMQP_PORT));
assertEquals("value2", props.get("name2"));
}
Modified: qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/server/BrokerStartupTest.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/server/BrokerStartupTest.java?rev=1586938&r1=1586937&r2=1586938&view=diff
==============================================================================
--- qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/server/BrokerStartupTest.java (original)
+++ qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/server/BrokerStartupTest.java Sun Apr 13 08:49:34 2014
@@ -20,6 +20,13 @@
*/
package org.apache.qpid.server;
+import java.io.File;
+import java.util.List;
+
+import javax.jms.Connection;
+import javax.jms.Queue;
+import javax.jms.Session;
+
import junit.framework.AssertionFailedError;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
@@ -27,12 +34,6 @@ import org.apache.log4j.Logger;
import org.apache.qpid.server.logging.AbstractTestLogging;
import org.apache.qpid.util.LogMonitor;
-import javax.jms.Connection;
-import javax.jms.Queue;
-import javax.jms.Session;
-import java.io.File;
-import java.util.List;
-
/**
* Series of tests to validate the external Java broker starts up as expected.
*/
@@ -47,7 +48,33 @@ public class BrokerStartupTest extends A
//part of the test case.
}
-
+ /**
+ * This test simply tests that the broker will startup even if there is no config file (i.e. that it can use the
+ * currently packaged initial config file (all system tests by default generate their own config file).
+ *
+ * It makes the assumption that setting the system property qpid.amqp_port
+ * to the value of getPort(0) will allow a connection to be established with getConnection()
+ *
+ * @throws Exception
+ */
+ public void testStartupWithNoConfig() throws Exception
+ {
+ if (isJavaBroker())
+ {
+ int port = getPort(0);
+ int managementPort = getManagementPort(port);
+ int connectorServerPort = managementPort + JMXPORT_CONNECTORSERVER_OFFSET;
+
+ setTestSystemProperty("qpid.amqp_port",String.valueOf(port));
+ setTestSystemProperty("qpid.jmx_port",String.valueOf(managementPort));
+ setTestSystemProperty("qpid.rmi_port",String.valueOf(connectorServerPort));
+ startBroker(port, null);
+
+ Connection conn = getConnection();
+ assertNotNull(conn);
+ conn.close();
+ }
+ }
/**
* Description:
* Test that providing an invalid broker logging configuration file does not
Modified: qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java?rev=1586938&r1=1586937&r2=1586938&view=diff
==============================================================================
--- qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java (original)
+++ qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/QpidBrokerTestCase.java Sun Apr 13 08:49:34 2014
@@ -689,7 +689,7 @@ public class QpidBrokerTestCase extends
{
String testConfig = getTestConfigFile(port);
String relative = getPathRelativeToWorkingDirectory(testConfig);
- if (!testConfiguration.isSaved())
+ if (testConfiguration != null && !testConfiguration.isSaved())
{
_logger.info("Saving test broker configuration at: " + testConfig);
testConfiguration.save(new File(testConfig));
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org