You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ri...@apache.org on 2009/09/10 16:38:25 UTC
svn commit: r813459 - in /qpid/trunk/qpid/java/broker: etc/config.xml
etc/virtualhosts.xml
src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java
src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java
Author: ritchiem
Date: Thu Sep 10 14:38:25 2009
New Revision: 813459
URL: http://svn.apache.org/viewvc?rev=813459&view=rev
Log:
QPID-2091 : Updated ServerConfiguration and added test to ServerConfigurationTest. Merged virtualhost.xml with config.xml
Removed:
qpid/trunk/qpid/java/broker/etc/virtualhosts.xml
Modified:
qpid/trunk/qpid/java/broker/etc/config.xml
qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java
qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java
Modified: qpid/trunk/qpid/java/broker/etc/config.xml
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/etc/config.xml?rev=813459&r1=813458&r2=813459&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/etc/config.xml (original)
+++ qpid/trunk/qpid/java/broker/etc/config.xml Thu Sep 10 14:38:25 2009
@@ -24,17 +24,20 @@
<work>${QPID_WORK}</work>
<conf>${prefix}/etc</conf>
<connector>
- <!-- Uncomment out this block and edit the keystorePath and keystorePassword
- to enable SSL support
+ <!-- To enable SSL edit the keystorePath and keystorePassword
+ and set enabled to true.
+ To disasble Non-SSL port set sslOnly to true -->
<ssl>
- <enabled>true</enabled>
- <sslOnly>true</sslOnly>
+ <enabled>false</enabled>
+ <sslOnly>false</sslOnly>
<keystorePath>/path/to/keystore.ks</keystorePath>
<keystorePassword>keystorepass</keystorePassword>
- </ssl>-->
+ </ssl>
<qpidnio>false</qpidnio>
<protectio>
<enabled>false</enabled>
+ <readBufferLimitSize>262144</readBufferLimitSize>
+ <writeBufferLimitSize>262144</writeBufferLimitSize>
</protectio>
<transport>nio</transport>
<port>5672</port>
@@ -59,6 +62,7 @@
<framesize>65535</framesize>
<compressBufferOnQueue>false</compressBufferOnQueue>
<enableJMSXUserID>false</enableJMSXUserID>
+ <locale>en_US</locale>
</advanced>
<security>
@@ -89,40 +93,143 @@
</security>
<virtualhosts>
- <directory>${conf}/virtualhosts</directory>
+ <default>test</default>
<virtualhost>
<name>localhost</name>
<localhost>
<store>
- <class>org.apache.qpid.server.store.MemoryMessageStore</class>
+ <class>org.apache.qpid.server.store.MemoryMessageStore
+ </class>
</store>
<housekeeping>
<expiredMessageCheckPeriod>20000</expiredMessageCheckPeriod>
</housekeeping>
+ <exchanges>
+ <exchange>
+ <type>direct</type>
+ <name>test.direct</name>
+ <durable>true</durable>
+ </exchange>
+ <exchange>
+ <type>topic</type>
+ <name>test.topic</name>
+ </exchange>
+ </exchanges>
+ <queues>
+ <exchange>amq.direct</exchange>
+ <maximumQueueDepth>4235264</maximumQueueDepth>
+ <!-- 4Mb -->
+ <maximumMessageSize>2117632</maximumMessageSize>
+ <!-- 2Mb -->
+ <maximumMessageAge>600000</maximumMessageAge>
+ <!-- 10 mins -->
+ <maximumMessageCount>50</maximumMessageCount>
+ <!-- 50 messages -->
+
+ <queue>
+ <name>queue</name>
+ </queue>
+ <queue>
+ <name>ping</name>
+ </queue>
+ <queue>
+ <name>test-queue</name>
+ <test-queue>
+ <exchange>test.direct</exchange>
+ <durable>true</durable>
+ </test-queue>
+ </queue>
+ <queue>
+ <name>test-ping</name>
+ <test-ping>
+ <exchange>test.direct</exchange>
+ </test-ping>
+ </queue>
+
+ </queues>
</localhost>
</virtualhost>
+
<virtualhost>
<name>development</name>
<development>
<store>
- <class>org.apache.qpid.server.store.MemoryMessageStore</class>
+ <class>org.apache.qpid.server.store.MemoryMessageStore
+ </class>
</store>
+
+ <queues>
+ <minimumAlertRepeatGap>30000</minimumAlertRepeatGap>
+ <maximumMessageCount>50</maximumMessageCount>
+ <queue>
+ <name>queue</name>
+ <queue>
+ <exchange>amq.direct</exchange>
+ <maximumQueueDepth>4235264</maximumQueueDepth>
+ <!-- 4Mb -->
+ <maximumMessageSize>2117632</maximumMessageSize>
+ <!-- 2Mb -->
+ <maximumMessageAge>600000</maximumMessageAge>
+ <!-- 10 mins -->
+ </queue>
+ </queue>
+ <queue>
+ <name>ping</name>
+ <ping>
+ <exchange>amq.direct</exchange>
+ <maximumQueueDepth>4235264</maximumQueueDepth>
+ <!-- 4Mb -->
+ <maximumMessageSize>2117632</maximumMessageSize>
+ <!-- 2Mb -->
+ <maximumMessageAge>600000</maximumMessageAge>
+ <!-- 10 mins -->
+ </ping>
+ </queue>
+ </queues>
</development>
</virtualhost>
-
<virtualhost>
<name>test</name>
<test>
<store>
- <class>org.apache.qpid.server.store.MemoryMessageStore</class>
+ <class>org.apache.qpid.server.store.MemoryMessageStore
+ </class>
</store>
+
+ <queues>
+ <minimumAlertRepeatGap>30000</minimumAlertRepeatGap>
+ <maximumMessageCount>50</maximumMessageCount>
+ <queue>
+ <name>queue</name>
+ <queue>
+ <exchange>amq.direct</exchange>
+ <maximumQueueDepth>4235264</maximumQueueDepth>
+ <!-- 4Mb -->
+ <maximumMessageSize>2117632</maximumMessageSize>
+ <!-- 2Mb -->
+ <maximumMessageAge>600000</maximumMessageAge>
+ <!-- 10 mins -->
+ </queue>
+ </queue>
+ <queue>
+ <name>ping</name>
+ <ping>
+ <exchange>amq.direct</exchange>
+ <maximumQueueDepth>4235264</maximumQueueDepth>
+ <!-- 4Mb -->
+ <maximumMessageSize>2117632</maximumMessageSize>
+ <!-- 2Mb -->
+ <maximumMessageAge>600000</maximumMessageAge>
+ <!-- 10 mins -->
+ </ping>
+ </queue>
+ </queues>
</test>
</virtualhost>
-
</virtualhosts>
<heartbeat>
<delay>0</delay>
@@ -132,7 +239,8 @@
<auto_register>true</auto_register>
</queue>
- <virtualhosts>${conf}/virtualhosts.xml</virtualhosts>
+ <status-updates>ON</status-updates>
+
</broker>
Modified: qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java?rev=813459&r1=813458&r2=813459&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java (original)
+++ qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java Thu Sep 10 14:38:25 2009
@@ -147,32 +147,27 @@
Object thing = i.next();
if (thing instanceof String)
{
+ //Open the Virtualhost.xml file and copy values in to main config
XMLConfiguration vhostConfiguration = new XMLConfiguration((String) thing);
- List hosts = vhostConfiguration.getList("virtualhost.name");
- for (int j = 0; j < hosts.size(); j++)
- {
- String name = (String) hosts.get(j);
- // Add the keys of the virtual host to the main config then bail out
-
- Configuration myConf = vhostConfiguration.subset("virtualhost." + name);
- Iterator k = myConf.getKeys();
- while (k.hasNext())
- {
- String key = (String) k.next();
- conf.setProperty("virtualhosts.virtualhost."+name+"."+key, myConf.getProperty(key));
- }
- VirtualHostConfiguration vhostConfig = new VirtualHostConfiguration(name, conf.subset("virtualhosts.virtualhost."+name));
- _virtualHosts.put(vhostConfig.getName(), vhostConfig);
- }
- // Grab things other than the virtualhosts themselves
Iterator keys = vhostConfiguration.getKeys();
while (keys.hasNext())
{
String key = (String) keys.next();
- conf.setProperty("virtualhosts."+key, vhostConfiguration.getProperty(key));
+ conf.setProperty("virtualhosts." + key, vhostConfiguration.getProperty(key));
}
}
}
+
+ List hosts = conf.getList("virtualhosts.virtualhost.name");
+ for (int j = 0; j < hosts.size(); j++)
+ {
+ String name = (String) hosts.get(j);
+ // Add the keys of the virtual host to the main config then bail out
+
+ VirtualHostConfiguration vhostConfig = new VirtualHostConfiguration(name, conf.subset("virtualhosts.virtualhost." + name));
+ _virtualHosts.put(vhostConfig.getName(), vhostConfig);
+ }
+
}
private void substituteEnvironmentVariables()
@@ -202,7 +197,7 @@
}
/**
- * Check the configuration file to see if status updates are enabled.
+ * Check the configuration file to see if status updates are enabled.
* @return true if status updates are enabled
*/
public boolean getStatusUpdatesEnabled()
@@ -466,7 +461,7 @@
{
return getConfig().getBoolean("management.enabled", true);
}
-
+
public void setManagementEnabled(boolean enabled)
{
getConfig().setProperty("management.enabled", enabled);
Modified: qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java?rev=813459&r1=813458&r2=813459&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java (original)
+++ qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java Thu Sep 10 14:38:25 2009
@@ -54,7 +54,7 @@
_config = new XMLConfiguration();
}
-
+
@Override
public void tearDown() throws Exception
{
@@ -727,7 +727,7 @@
assertEquals(true, config.getQpidNIO()); // From the second file, not
// present in the first
}
-
+
public void testVariableInterpolation() throws Exception
{
File mainFile = File.createTempFile(getClass().getName(), null);
@@ -742,7 +742,7 @@
out.close();
ServerConfiguration config = new ServerConfiguration(mainFile.getAbsoluteFile());
- assertEquals("Did not get correct interpolated value",
+ assertEquals("Did not get correct interpolated value",
"foo", config.getManagementKeyStorePath());
}
@@ -783,7 +783,7 @@
out.write("\t</virtualhosts>\n");
out.write("</broker>\n");
out.close();
-
+
// Load config
ApplicationRegistry reg = new ConfigurationFileApplicationRegistry(mainFile);
ApplicationRegistry.initialise(reg, 1);
@@ -795,15 +795,15 @@
TestIoSession iosession = new TestIoSession();
iosession.setAddress("127.0.0.1");
-
+
AMQProtocolSession session = new AMQMinaProtocolSession(iosession, virtualHostRegistry, codecFactory);
assertFalse(reg.getAccessManager().authoriseConnect(session, virtualHost));
-
+
iosession.setAddress("127.1.2.3");
session = new AMQMinaProtocolSession(iosession, virtualHostRegistry, codecFactory);
assertTrue(reg.getAccessManager().authoriseConnect(session, virtualHost));
}
-
+
public void testCombinedConfigurationFirewall() throws Exception
{
// Write out config
@@ -870,7 +870,7 @@
TestIoSession iosession = new TestIoSession();
iosession.setAddress("127.0.0.1");
-
+
AMQProtocolSession session = new AMQMinaProtocolSession(iosession, virtualHostRegistry, codecFactory);
assertFalse(reg.getAccessManager().authoriseConnect(session, virtualHost));
}
@@ -947,22 +947,22 @@
fileBRandom.setLength(0);
fileBRandom.seek(0);
fileBRandom.close();
-
+
out = new FileWriter(fileB);
out.write("<firewall>\n");
out.write("\t<rule access=\"allow\" network=\"127.0.0.1\"/>");
out.write("</firewall>\n");
out.close();
-
+
reg.getConfiguration().reparseConfigFile();
-
+
assertTrue(reg.getAccessManager().authoriseConnect(session, virtualHost));
-
+
fileBRandom = new RandomAccessFile(fileB, "rw");
fileBRandom.setLength(0);
fileBRandom.seek(0);
fileBRandom.close();
-
+
out = new FileWriter(fileB);
out.write("<firewall>\n");
out.write("\t<rule access=\"deny\" network=\"127.0.0.1\"/>");
@@ -970,17 +970,17 @@
out.close();
reg.getConfiguration().reparseConfigFile();
-
+
assertFalse(reg.getAccessManager().authoriseConnect(session, virtualHost));
}
public void testnewParserOutputVsOldParserOutput() throws ConfigurationException
{
String configDir = System.getProperty("QPID_HOME")+"/etc";
-
- XMLConfiguration oldConfig = new XMLConfiguration(configDir +"/sample-parsed-config.xml");
- Configuration newConfig = new ServerConfiguration(new File(configDir+"/persistent_config-config-test.xml")).getConfig();
-
+
+ XMLConfiguration oldConfig = new XMLConfiguration(configDir +"/config-systests-ServerConfigurationTest-Old.xml");
+ Configuration newConfig = new ServerConfiguration(new File(configDir+"/config-systests-ServerConfigurationTest-New.xml")).getConfig();
+
Iterator xmlKeys = oldConfig.getKeys();
while (xmlKeys.hasNext())
{
@@ -988,6 +988,21 @@
assertEquals("Incorrect value for "+key, oldConfig.getProperty(key), newConfig.getProperty(key));
}
}
-
-
+
+
+ public void testNoVirtualhostXMLFile() throws Exception
+ {
+ int REGISTRY=1;
+
+ File configFile = new File(System.getProperty("QPID_HOME")+"/etc/config.xml");
+ assertTrue(configFile.exists());
+
+ ApplicationRegistry.initialise(new ConfigurationFileApplicationRegistry(configFile), REGISTRY);
+
+ VirtualHostRegistry virtualHostRegistry = ApplicationRegistry.getInstance(REGISTRY).getVirtualHostRegistry();
+
+ assertEquals("Incorrect virtualhost count", 3 , virtualHostRegistry.getVirtualHosts().size());
+ }
+
+
}
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:commits-subscribe@qpid.apache.org