summaryrefslogtreecommitdiff
path: root/java
diff options
context:
space:
mode:
authorRobert Gemmell <robbie@apache.org>2011-01-27 11:18:59 +0000
committerRobert Gemmell <robbie@apache.org>2011-01-27 11:18:59 +0000
commitb9ad6350e2d6411b7c1f0fc2d468f1d517c75ce6 (patch)
treed68a7c40e1d007122c50a5a60af6cbd57fd0b79c /java
parent1a1f4659ff6466dc25fa206201d52e3b2fee5a2a (diff)
downloadqpid-python-b9ad6350e2d6411b7c1f0fc2d468f1d517c75ce6.tar.gz
QPID-3023: enable using the ServerConfiguration directly instead of leveraging an internal broker (via IBBC) to load the vhost config required for the tests
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1064085 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java')
-rw-r--r--java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java2
-rw-r--r--java/systests/src/main/java/org/apache/qpid/server/logging/AbstractTestLogging.java75
-rw-r--r--java/systests/src/main/java/org/apache/qpid/server/logging/MemoryMessageStoreLoggingTest.java4
-rw-r--r--java/systests/src/main/java/org/apache/qpid/server/logging/VirtualHostLoggingTest.java2
4 files changed, 24 insertions, 59 deletions
diff --git a/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java b/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java
index c6a8818d90..d7dcfa7dc8 100644
--- a/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java
+++ b/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java
@@ -212,7 +212,7 @@ public class ServerConfiguration extends ConfigurationPlugin implements SignalHa
* both, as a fix for QPID-2360 and QPID-2361.
*/
@SuppressWarnings("unchecked")
- private void setupVirtualHosts(Configuration conf) throws ConfigurationException
+ protected void setupVirtualHosts(Configuration conf) throws ConfigurationException
{
List<String> vhostFiles = conf.getList("virtualhosts");
Configuration vhostConfig = conf.subset("virtualhosts");
diff --git a/java/systests/src/main/java/org/apache/qpid/server/logging/AbstractTestLogging.java b/java/systests/src/main/java/org/apache/qpid/server/logging/AbstractTestLogging.java
index 7b59266eb3..f56f428f0b 100644
--- a/java/systests/src/main/java/org/apache/qpid/server/logging/AbstractTestLogging.java
+++ b/java/systests/src/main/java/org/apache/qpid/server/logging/AbstractTestLogging.java
@@ -20,19 +20,6 @@
*/
package org.apache.qpid.server.logging;
-import org.apache.qpid.server.configuration.ServerConfiguration;
-import org.apache.qpid.server.configuration.VirtualHostConfiguration;
-import org.apache.qpid.server.logging.actors.CurrentActor;
-import org.apache.qpid.server.logging.actors.TestLogActor;
-import org.apache.qpid.server.logging.subjects.AbstractTestLogSubject;
-import org.apache.qpid.server.registry.ApplicationRegistry;
-import org.apache.qpid.server.store.SkeletonMessageStore;
-import org.apache.qpid.server.util.InternalBrokerBaseCase;
-import org.apache.qpid.server.util.TestApplicationRegistry;
-import org.apache.qpid.server.virtualhost.VirtualHost;
-import org.apache.qpid.test.utils.QpidBrokerTestCase;
-import org.apache.qpid.util.LogMonitor;
-
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.HashMap;
@@ -40,6 +27,14 @@ import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
+import org.apache.commons.configuration.ConfigurationException;
+import org.apache.qpid.server.configuration.ServerConfiguration;
+import org.apache.qpid.server.logging.subjects.AbstractTestLogSubject;
+import org.apache.qpid.server.registry.ApplicationRegistry;
+import org.apache.qpid.server.util.InternalBrokerBaseCase;
+import org.apache.qpid.test.utils.QpidBrokerTestCase;
+import org.apache.qpid.util.LogMonitor;
+
/**
* Abstract superclass for logging test set up and utility methods.
*
@@ -50,7 +45,6 @@ public class AbstractTestLogging extends QpidBrokerTestCase
public static final long DEFAULT_LOG_WAIT = 2000;
public static final String TEST_LOG_PREFIX = "MESSAGE";
protected LogMonitor _monitor;
- ServerConfiguration _serverConfiguration;
InternalBrokerBaseCase _configLoader;
@@ -61,61 +55,32 @@ public class AbstractTestLogging extends QpidBrokerTestCase
super.setUp();
_monitor = new LogMonitor(_outputFile);
+ }
+ protected ServerConfiguration getServerConfig() throws ConfigurationException
+ {
+ ServerConfiguration _serverConfiguration;
if (isExternalBroker())
{
- _serverConfiguration = new ServerConfiguration(_configFile);
-
- _configLoader = new InternalBrokerBaseCase()
+ _serverConfiguration = new ServerConfiguration(_configFile)
{
@Override
- protected void createBroker() throws Exception
- {
- setStarted(true);
- CurrentActor.set(new TestLogActor(new SystemOutMessageLogger()));
-
- // Prevent the InVM broker from logging and spoiling tests.
- _serverConfiguration.getConfig().setProperty(ServerConfiguration.STATUS_UPDATES, "off");
-
- setConfiguration(_serverConfiguration);
- setRegistry(new TestApplicationRegistry(getConfiguration())
- {
- /**
- * Create a virtualhost with a {@link org.apache.qpid.server.store.SkeletonMessageStore} instead
- * of the configured one, but remember the original configuration.
- */
- @Override
- public VirtualHost createVirtualHost(final VirtualHostConfiguration vhostConfig) throws Exception
- {
- String oldClass = vhostConfig.getMessageStoreClass();
- vhostConfig.setMessageStoreClass(SkeletonMessageStore.class.getName());
- VirtualHost host = super.createVirtualHost(vhostConfig);
- vhostConfig.setMessageStoreClass(oldClass);
- return host;
- }
- });
- ApplicationRegistry.initialise(getRegistry());
-
- }
-
- @Override
- protected void stopBroker()
+ public void initialise() throws ConfigurationException
{
- ApplicationRegistry.remove();
+ //Overriding initialise to only setup the vhosts and not
+ //perform the ConfigurationPlugin setup, removing need for
+ //an ApplicationRegistry to be loaded.
+ setupVirtualHosts(getConfig());
}
};
-
- // Set the test name as this will be used to define some default queues
- // VirtualHost, use test as this is a default vhost name.
- _configLoader.setName("test");
-
- _configLoader.setUp();
+ _serverConfiguration.initialise();
}
else
{
_serverConfiguration = ApplicationRegistry.getInstance().getConfiguration();
}
+ return _serverConfiguration;
}
protected void setLogMessagePrefix()
diff --git a/java/systests/src/main/java/org/apache/qpid/server/logging/MemoryMessageStoreLoggingTest.java b/java/systests/src/main/java/org/apache/qpid/server/logging/MemoryMessageStoreLoggingTest.java
index 877560ea14..34d9e1f057 100644
--- a/java/systests/src/main/java/org/apache/qpid/server/logging/MemoryMessageStoreLoggingTest.java
+++ b/java/systests/src/main/java/org/apache/qpid/server/logging/MemoryMessageStoreLoggingTest.java
@@ -92,7 +92,7 @@ public class MemoryMessageStoreLoggingTest extends AbstractTestLogging
results = waitAndFindMatches("MST-1001");
// Load VirtualHost list from file.
- List<String> vhosts = Arrays.asList(_serverConfiguration.getVirtualHosts());
+ List<String> vhosts = Arrays.asList(getServerConfig().getVirtualHosts());
assertEquals("Each vhost did not create a store.", vhosts.size(), results.size());
@@ -105,7 +105,7 @@ public class MemoryMessageStoreLoggingTest extends AbstractTestLogging
String vhostName = AbstractTestLogSubject.getSlice("vh", result).substring(1);
// Get the store class used in the configuration for the virtualhost.
- String fullStoreName = _serverConfiguration.getVirtualHostConfig(vhostName).getMessageStoreClass();
+ String fullStoreName = getServerConfig().getVirtualHostConfig(vhostName).getMessageStoreClass();
// Get the Simple class name from the expected class name of o.a.q.s.s.MMS
String storeName = fullStoreName.substring(fullStoreName.lastIndexOf(".") + 1);
diff --git a/java/systests/src/main/java/org/apache/qpid/server/logging/VirtualHostLoggingTest.java b/java/systests/src/main/java/org/apache/qpid/server/logging/VirtualHostLoggingTest.java
index 17423123ca..a23e40ecce 100644
--- a/java/systests/src/main/java/org/apache/qpid/server/logging/VirtualHostLoggingTest.java
+++ b/java/systests/src/main/java/org/apache/qpid/server/logging/VirtualHostLoggingTest.java
@@ -68,7 +68,7 @@ public class VirtualHostLoggingTest extends AbstractTestLogging
try
{
- List<String> vhosts = Arrays.asList(_serverConfiguration.getVirtualHosts());
+ List<String> vhosts = Arrays.asList(getServerConfig().getVirtualHosts());
assertEquals("Each vhost did not create a store.", vhosts.size(), results.size());