summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--java/broker/src/test/java/org/apache/qpid/server/exchange/AbstractHeadersExchangeTestBase.java13
-rw-r--r--java/broker/src/test/java/org/apache/qpid/server/exchange/DestWildExchangeTest.java2
-rw-r--r--java/broker/src/test/java/org/apache/qpid/server/exchange/HeadersExchangeTest.java41
-rw-r--r--java/broker/src/test/java/org/apache/qpid/server/logging/actors/AMQPChannelActorTest.java236
-rw-r--r--java/broker/src/test/java/org/apache/qpid/server/logging/actors/AMQPConnectionActorTest.java113
-rw-r--r--java/broker/src/test/java/org/apache/qpid/server/logging/actors/CurrentActorTest.java34
-rw-r--r--java/broker/src/test/java/org/apache/qpid/server/logging/subjects/AbstractTestLogSubject.java16
-rw-r--r--java/broker/src/test/java/org/apache/qpid/server/logging/subjects/ChannelLogSubjectTest.java24
-rw-r--r--java/broker/src/test/java/org/apache/qpid/server/logging/subjects/ConnectionLogSubjectTest.java28
-rw-r--r--java/broker/src/test/java/org/apache/qpid/server/logging/subjects/SubscriptionLogSubjectTest.java32
-rw-r--r--java/broker/src/test/java/org/apache/qpid/server/protocol/InternalTestProtocolSession.java16
-rw-r--r--java/broker/src/test/java/org/apache/qpid/server/queue/AMQQueueAlertTest.java8
-rw-r--r--java/broker/src/test/java/org/apache/qpid/server/queue/AMQQueueMBeanTest.java5
-rw-r--r--java/broker/src/test/java/org/apache/qpid/server/queue/AckTest.java11
-rw-r--r--java/broker/src/test/java/org/apache/qpid/server/queue/MockProtocolSession.java292
-rw-r--r--java/broker/src/test/java/org/apache/qpid/server/security/access/ACLManagerTest.java15
-rw-r--r--java/broker/src/test/java/org/apache/qpid/server/store/MessageStoreTest.java2
-rw-r--r--java/broker/src/test/java/org/apache/qpid/server/util/InternalBrokerBaseCase.java15
18 files changed, 309 insertions, 594 deletions
diff --git a/java/broker/src/test/java/org/apache/qpid/server/exchange/AbstractHeadersExchangeTestBase.java b/java/broker/src/test/java/org/apache/qpid/server/exchange/AbstractHeadersExchangeTestBase.java
index 6dcb187a37..f8dd266bd2 100644
--- a/java/broker/src/test/java/org/apache/qpid/server/exchange/AbstractHeadersExchangeTestBase.java
+++ b/java/broker/src/test/java/org/apache/qpid/server/exchange/AbstractHeadersExchangeTestBase.java
@@ -33,6 +33,7 @@ import org.apache.qpid.server.store.StoreContext;
import org.apache.qpid.server.txn.NonTransactionalContext;
import org.apache.qpid.server.txn.TransactionalContext;
import org.apache.qpid.server.RequiredDeliveryException;
+import org.apache.qpid.server.virtualhost.VirtualHost;
import org.apache.qpid.server.subscription.Subscription;
import org.apache.qpid.server.protocol.AMQProtocolSession;
import org.apache.log4j.Logger;
@@ -463,14 +464,14 @@ public class AbstractHeadersExchangeTestBase extends TestCase
new LinkedList<RequiredDeliveryException>()
);
- Message(String id, String... headers) throws AMQException
+ Message(AMQProtocolSession protocolSession, String id, String... headers) throws AMQException
{
- this(id, getHeaders(headers));
+ this(protocolSession, id, getHeaders(headers));
}
- Message(String id, FieldTable headers) throws AMQException
+ Message(AMQProtocolSession protocolSession, String id, FieldTable headers) throws AMQException
{
- this(_messageStore.getNewMessageId(),getPublishRequest(id), getContentHeader(headers), null);
+ this(protocolSession, _messageStore.getNewMessageId(),getPublishRequest(id), getContentHeader(headers), null);
}
public IncomingMessage getIncomingMessage()
@@ -478,7 +479,7 @@ public class AbstractHeadersExchangeTestBase extends TestCase
return _incoming;
}
- private Message(long messageId,
+ private Message(AMQProtocolSession protocolsession, long messageId,
MessagePublishInfo publish,
ContentHeaderBody header,
List<ContentBody> bodies) throws AMQException
@@ -487,7 +488,7 @@ public class AbstractHeadersExchangeTestBase extends TestCase
- _incoming = new TestIncomingMessage(getMessageId(),publish,_txnContext,new MockProtocolSession(_messageStore));
+ _incoming = new TestIncomingMessage(getMessageId(),publish, _txnContext, protocolsession);
_incoming.setContentHeaderBody(header);
diff --git a/java/broker/src/test/java/org/apache/qpid/server/exchange/DestWildExchangeTest.java b/java/broker/src/test/java/org/apache/qpid/server/exchange/DestWildExchangeTest.java
index aa25e207a9..f4ab1cb761 100644
--- a/java/broker/src/test/java/org/apache/qpid/server/exchange/DestWildExchangeTest.java
+++ b/java/broker/src/test/java/org/apache/qpid/server/exchange/DestWildExchangeTest.java
@@ -57,7 +57,7 @@ public class DestWildExchangeTest extends TestCase
_vhost = ApplicationRegistry.getInstance().getVirtualHostRegistry().getVirtualHosts().iterator().next();
_store = new MemoryMessageStore();
_context = new StoreContext();
- _protocolSession = new InternalTestProtocolSession();
+ _protocolSession = new InternalTestProtocolSession(_vhost);
}
public void tearDown()
diff --git a/java/broker/src/test/java/org/apache/qpid/server/exchange/HeadersExchangeTest.java b/java/broker/src/test/java/org/apache/qpid/server/exchange/HeadersExchangeTest.java
index fd11ddeae2..3c6abd0ad9 100644
--- a/java/broker/src/test/java/org/apache/qpid/server/exchange/HeadersExchangeTest.java
+++ b/java/broker/src/test/java/org/apache/qpid/server/exchange/HeadersExchangeTest.java
@@ -23,14 +23,21 @@ package org.apache.qpid.server.exchange;
import org.apache.qpid.AMQException;
import org.apache.qpid.server.registry.ApplicationRegistry;
import org.apache.qpid.server.util.NullApplicationRegistry;
-import org.apache.qpid.framing.BasicPublishBody;
+import org.apache.qpid.server.virtualhost.VirtualHost;
+import org.apache.qpid.server.protocol.InternalTestProtocolSession;
+import org.apache.qpid.server.protocol.AMQProtocolSession;
public class HeadersExchangeTest extends AbstractHeadersExchangeTestBase
{
+ AMQProtocolSession _protocolSession;
+
protected void setUp() throws Exception
{
super.setUp();
ApplicationRegistry.initialise(new NullApplicationRegistry(), 1);
+ // Just use the first vhost.
+ VirtualHost virtualHost = ApplicationRegistry.getInstance(1).getVirtualHostRegistry().getVirtualHosts().iterator().next();
+ _protocolSession = new InternalTestProtocolSession(virtualHost);
}
protected void tearDown()
@@ -49,21 +56,21 @@ public class HeadersExchangeTest extends AbstractHeadersExchangeTestBase
TestQueue q7 = bindDefault("F0000", "F0001=Bear");
TestQueue q8 = bindDefault("F0000=Aardvark", "F0001");
- routeAndTest(new Message("Message1", "F0000"), q1);
- routeAndTest(new Message("Message2", "F0000=Aardvark"), q1, q2);
- routeAndTest(new Message("Message3", "F0000=Aardvark", "F0001"), q1, q2, q3, q5, q8);
- routeAndTest(new Message("Message4", "F0000", "F0001=Bear"), q1, q3, q4, q5, q7);
- routeAndTest(new Message("Message5", "F0000=Aardvark", "F0001=Bear"),
+ routeAndTest(new Message(_protocolSession, "Message1", "F0000"), q1);
+ routeAndTest(new Message(_protocolSession, "Message2", "F0000=Aardvark"), q1, q2);
+ routeAndTest(new Message(_protocolSession, "Message3", "F0000=Aardvark", "F0001"), q1, q2, q3, q5, q8);
+ routeAndTest(new Message(_protocolSession, "Message4", "F0000", "F0001=Bear"), q1, q3, q4, q5, q7);
+ routeAndTest(new Message(_protocolSession, "Message5", "F0000=Aardvark", "F0001=Bear"),
q1, q2, q3, q4, q5, q6, q7, q8);
- routeAndTest(new Message("Message6", "F0002"));
+ routeAndTest(new Message(_protocolSession, "Message6", "F0002"));
- Message m7 = new Message("Message7", "XXXXX");
+ Message m7 = new Message(_protocolSession, "Message7", "XXXXX");
MessagePublishInfoImpl pb7 = (MessagePublishInfoImpl) (m7.getMessagePublishInfo());
pb7.setMandatory(true);
routeAndTest(m7,true);
- Message m8 = new Message("Message8", "F0000");
+ Message m8 = new Message(_protocolSession, "Message8", "F0000");
MessagePublishInfoImpl pb8 = (MessagePublishInfoImpl)(m8.getMessagePublishInfo());
pb8.setMandatory(true);
routeAndTest(m8,false,q1);
@@ -79,19 +86,19 @@ public class HeadersExchangeTest extends AbstractHeadersExchangeTestBase
TestQueue q4 = bindDefault("F0000=Aardvark", "F0001", "X-match=any");
TestQueue q6 = bindDefault("F0000=Apple", "F0001", "X-match=any");
- routeAndTest(new Message("Message1", "F0000"), q1, q3);
- routeAndTest(new Message("Message2", "F0000=Aardvark"), q1, q2, q3, q4);
- routeAndTest(new Message("Message3", "F0000=Aardvark", "F0001"), q1, q2, q3, q4, q6);
- routeAndTest(new Message("Message4", "F0000", "F0001=Bear"), q1, q2, q3, q4, q6);
- routeAndTest(new Message("Message5", "F0000=Aardvark", "F0001=Bear"), q1, q2, q3, q4, q6);
- routeAndTest(new Message("Message6", "F0002"));
+ routeAndTest(new Message(_protocolSession, "Message1", "F0000"), q1, q3);
+ routeAndTest(new Message(_protocolSession, "Message2", "F0000=Aardvark"), q1, q2, q3, q4);
+ routeAndTest(new Message(_protocolSession, "Message3", "F0000=Aardvark", "F0001"), q1, q2, q3, q4, q6);
+ routeAndTest(new Message(_protocolSession, "Message4", "F0000", "F0001=Bear"), q1, q2, q3, q4, q6);
+ routeAndTest(new Message(_protocolSession, "Message5", "F0000=Aardvark", "F0001=Bear"), q1, q2, q3, q4, q6);
+ routeAndTest(new Message(_protocolSession, "Message6", "F0002"));
}
public void testMandatory() throws AMQException
{
bindDefault("F0000");
- Message m1 = new Message("Message1", "XXXXX");
- Message m2 = new Message("Message2", "F0000");
+ Message m1 = new Message(_protocolSession, "Message1", "XXXXX");
+ Message m2 = new Message(_protocolSession, "Message2", "F0000");
MessagePublishInfoImpl pb1 = (MessagePublishInfoImpl) (m1.getMessagePublishInfo());
pb1.setMandatory(true);
MessagePublishInfoImpl pb2 = (MessagePublishInfoImpl) (m2.getMessagePublishInfo());
diff --git a/java/broker/src/test/java/org/apache/qpid/server/logging/actors/AMQPChannelActorTest.java b/java/broker/src/test/java/org/apache/qpid/server/logging/actors/AMQPChannelActorTest.java
index 298e3bc22c..009699be35 100644
--- a/java/broker/src/test/java/org/apache/qpid/server/logging/actors/AMQPChannelActorTest.java
+++ b/java/broker/src/test/java/org/apache/qpid/server/logging/actors/AMQPChannelActorTest.java
@@ -27,11 +27,9 @@ import org.apache.commons.configuration.PropertiesConfiguration;
import org.apache.qpid.AMQException;
import org.apache.qpid.server.configuration.ServerConfiguration;
import org.apache.qpid.server.protocol.AMQProtocolSession;
-import org.apache.qpid.server.queue.MockProtocolSession;
+import org.apache.qpid.server.protocol.InternalTestProtocolSession;
import org.apache.qpid.server.registry.ApplicationRegistry;
-import org.apache.qpid.server.store.MemoryMessageStore;
import org.apache.qpid.server.virtualhost.VirtualHost;
-import org.apache.qpid.server.logging.actors.AMQPConnectionActor;
import org.apache.qpid.server.logging.rawloggers.UnitTestMessageLogger;
import org.apache.qpid.server.logging.RootMessageLogger;
import org.apache.qpid.server.logging.RootMessageLoggerImpl;
@@ -56,38 +54,33 @@ public class AMQPChannelActorTest extends TestCase
LogActor _amqpActor;
UnitTestMessageLogger _rawLogger;
+ AMQProtocolSession _session;
+ AMQChannel _channel;
public void setUp() throws ConfigurationException, AMQException
{
Configuration config = new PropertiesConfiguration();
ServerConfiguration serverConfig = new ServerConfiguration(config);
+ setUpWithConfig(serverConfig);
+ }
+
+ private void setUpWithConfig(ServerConfiguration serverConfig) throws AMQException
+ {
_rawLogger = new UnitTestMessageLogger();
RootMessageLogger rootLogger =
new RootMessageLoggerImpl(serverConfig, _rawLogger);
+ VirtualHost virtualHost = ApplicationRegistry.getInstance().
+ getVirtualHostRegistry().getVirtualHosts().iterator().next();
+
// Create a single session for this test.
- // Re-use is ok as we are testing the LogActor object is set correctly,
- // not the value of the output.
- AMQProtocolSession session = new MockProtocolSession(new MemoryMessageStore());
- // Use the first Virtualhost that has been defined to initialise
- // the MockProtocolSession. This prevents a NPE when the
- // AMQPActor attempts to lookup the name of the VHost.
- try
- {
- session.setVirtualHost(ApplicationRegistry.getInstance().
- getVirtualHostRegistry().getVirtualHosts().
- toArray(new VirtualHost[1])[0]);
- }
- catch (AMQException e)
- {
- fail("Unable to set virtualhost on session:" + e.getMessage());
- }
+ _session = new InternalTestProtocolSession(virtualHost);
- AMQChannel channel = new AMQChannel(session, 1, session.getVirtualHost().getMessageStore());
+ _channel = new AMQChannel(_session, 1, _session.getVirtualHost().getMessageStore());
- _amqpActor = new AMQPChannelActor(channel, rootLogger);
+ _amqpActor = new AMQPChannelActor(_channel, rootLogger);
}
@@ -105,22 +98,7 @@ public class AMQPChannelActorTest extends TestCase
*/
public void testChannel()
{
- final String message = "test logging";
-
- _amqpActor.message(new LogSubject()
- {
- public String toString()
- {
- return "[AMQPActorTest]";
- }
-
- }, new LogMessage()
- {
- public String toString()
- {
- return message;
- }
- });
+ final String message = sendTestMessage();
List<Object> logs = _rawLogger.getLogMessages();
@@ -146,40 +124,12 @@ public class AMQPChannelActorTest extends TestCase
}
- public void testChannelLoggingOff() throws ConfigurationException, AMQException
+ /**
+ * Log a message using the test Actor
+ * @return the logged message
+ */
+ private String sendTestMessage()
{
- Configuration config = new PropertiesConfiguration();
- config.addProperty("status-updates", "OFF");
-
- ServerConfiguration serverConfig = new ServerConfiguration(config);
-
- _rawLogger = new UnitTestMessageLogger();
- RootMessageLogger rootLogger =
- new RootMessageLoggerImpl(serverConfig, _rawLogger);
-
- // Create a single session for this test.
- // Re-use is ok as we are testing the LogActor object is set correctly,
- // not the value of the output.
- AMQProtocolSession session = new MockProtocolSession(new MemoryMessageStore());
- // Use the first Virtualhost that has been defined to initialise
- // the MockProtocolSession. This prevents a NPE when the
- // AMQPActor attempts to lookup the name of the VHost.
- try
- {
- session.setVirtualHost(ApplicationRegistry.getInstance().
- getVirtualHostRegistry().getVirtualHosts().
- toArray(new VirtualHost[1])[0]);
- }
- catch (AMQException e)
- {
- fail("Unable to set virtualhost on session:" + e.getMessage());
- }
-
-
- AMQChannel channel = new AMQChannel(session, 1, session.getVirtualHost().getMessageStore());
-
- _amqpActor = new AMQPChannelActor(channel, rootLogger);
-
final String message = "test logging";
_amqpActor.message(new LogSubject()
@@ -196,6 +146,152 @@ public class AMQPChannelActorTest extends TestCase
return message;
}
});
+ return message;
+ }
+
+ /**
+ * Test that if logging is configured to be off in the configuration that
+ * no logging is presented
+ * @throws ConfigurationException
+ * @throws AMQException
+ */
+ public void testChannelLoggingOFF() throws ConfigurationException, AMQException
+ {
+ Configuration config = new PropertiesConfiguration();
+ config.addProperty("status-updates", "OFF");
+
+ ServerConfiguration serverConfig = new ServerConfiguration(config);
+
+ _rawLogger = new UnitTestMessageLogger();
+
+ setUpWithConfig(serverConfig);
+
+ sendTestMessage();
+
+ List<Object> logs = _rawLogger.getLogMessages();
+
+ assertEquals("Message log size not as expected.", 0, logs.size());
+
+ }
+
+ /**
+ * Test that if logging is configured to be off in the configuration that
+ * no logging is presented
+ * @throws ConfigurationException
+ * @throws AMQException
+ */
+ public void testChannelLoggingOfF() throws ConfigurationException, AMQException
+ {
+ Configuration config = new PropertiesConfiguration();
+ config.addProperty("status-updates", "OfF");
+
+ ServerConfiguration serverConfig = new ServerConfiguration(config);
+
+ _rawLogger = new UnitTestMessageLogger();
+
+ setUpWithConfig(serverConfig);
+
+ sendTestMessage();
+
+ List<Object> logs = _rawLogger.getLogMessages();
+
+ assertEquals("Message log size not as expected.", 0, logs.size());
+
+ }
+
+ /**
+ * Test that if logging is configured to be off in the configuration that
+ * no logging is presented
+ * @throws ConfigurationException
+ * @throws AMQException
+ */
+ public void testChannelLoggingOff() throws ConfigurationException, AMQException
+ {
+ Configuration config = new PropertiesConfiguration();
+ config.addProperty("status-updates", "Off");
+
+ ServerConfiguration serverConfig = new ServerConfiguration(config);
+
+ _rawLogger = new UnitTestMessageLogger();
+
+ setUpWithConfig(serverConfig);
+
+ sendTestMessage();
+
+ List<Object> logs = _rawLogger.getLogMessages();
+
+ assertEquals("Message log size not as expected.", 0, logs.size());
+
+ }
+
+ /**
+ * Test that if logging is configured to be off in the configuration that
+ * no logging is presented
+ * @throws ConfigurationException
+ * @throws AMQException
+ */
+ public void testChannelLoggingofF() throws ConfigurationException, AMQException
+ {
+ Configuration config = new PropertiesConfiguration();
+ config.addProperty("status-updates", "ofF");
+
+ ServerConfiguration serverConfig = new ServerConfiguration(config);
+
+ _rawLogger = new UnitTestMessageLogger();
+
+ setUpWithConfig(serverConfig);
+
+ sendTestMessage();
+
+ List<Object> logs = _rawLogger.getLogMessages();
+
+ assertEquals("Message log size not as expected.", 0, logs.size());
+
+ }
+
+ /**
+ * Test that if logging is configured to be off in the configuration that
+ * no logging is presented
+ * @throws ConfigurationException
+ * @throws AMQException
+ */
+ public void testChannelLoggingoff() throws ConfigurationException, AMQException
+ {
+ Configuration config = new PropertiesConfiguration();
+ config.addProperty("status-updates", "off");
+
+ ServerConfiguration serverConfig = new ServerConfiguration(config);
+
+ _rawLogger = new UnitTestMessageLogger();
+
+ setUpWithConfig(serverConfig);
+
+ sendTestMessage();
+
+ List<Object> logs = _rawLogger.getLogMessages();
+
+ assertEquals("Message log size not as expected.", 0, logs.size());
+
+ }
+
+ /**
+ * Test that if logging is configured to be off in the configuration that
+ * no logging is presented
+ * @throws ConfigurationException
+ * @throws AMQException
+ */
+ public void testChannelLoggingoFf() throws ConfigurationException, AMQException
+ {
+ Configuration config = new PropertiesConfiguration();
+ config.addProperty("status-updates", "oFf");
+
+ ServerConfiguration serverConfig = new ServerConfiguration(config);
+
+ _rawLogger = new UnitTestMessageLogger();
+
+ setUpWithConfig(serverConfig);
+
+ sendTestMessage();
List<Object> logs = _rawLogger.getLogMessages();
diff --git a/java/broker/src/test/java/org/apache/qpid/server/logging/actors/AMQPConnectionActorTest.java b/java/broker/src/test/java/org/apache/qpid/server/logging/actors/AMQPConnectionActorTest.java
index c220865864..54eddf1050 100644
--- a/java/broker/src/test/java/org/apache/qpid/server/logging/actors/AMQPConnectionActorTest.java
+++ b/java/broker/src/test/java/org/apache/qpid/server/logging/actors/AMQPConnectionActorTest.java
@@ -26,18 +26,16 @@ import org.apache.commons.configuration.ConfigurationException;
import org.apache.commons.configuration.PropertiesConfiguration;
import org.apache.qpid.AMQException;
import org.apache.qpid.server.configuration.ServerConfiguration;
+import org.apache.qpid.server.logging.LogActor;
+import org.apache.qpid.server.logging.LogMessage;
+import org.apache.qpid.server.logging.LogSubject;
+import org.apache.qpid.server.logging.RootMessageLogger;
+import org.apache.qpid.server.logging.RootMessageLoggerImpl;
+import org.apache.qpid.server.logging.rawloggers.UnitTestMessageLogger;
import org.apache.qpid.server.protocol.AMQProtocolSession;
-import org.apache.qpid.server.queue.MockProtocolSession;
+import org.apache.qpid.server.protocol.InternalTestProtocolSession;
import org.apache.qpid.server.registry.ApplicationRegistry;
-import org.apache.qpid.server.store.MemoryMessageStore;
import org.apache.qpid.server.virtualhost.VirtualHost;
-import org.apache.qpid.server.logging.actors.AMQPConnectionActor;
-import org.apache.qpid.server.logging.rawloggers.UnitTestMessageLogger;
-import org.apache.qpid.server.logging.RootMessageLogger;
-import org.apache.qpid.server.logging.RootMessageLoggerImpl;
-import org.apache.qpid.server.logging.LogSubject;
-import org.apache.qpid.server.logging.LogMessage;
-import org.apache.qpid.server.logging.LogActor;
import java.util.List;
@@ -56,41 +54,34 @@ public class AMQPConnectionActorTest extends TestCase
LogActor _amqpActor;
UnitTestMessageLogger _rawLogger;
- public void setUp() throws ConfigurationException
+ public void setUp() throws ConfigurationException, AMQException
{
Configuration config = new PropertiesConfiguration();
ServerConfiguration serverConfig = new ServerConfiguration(config);
+ setUpWithConfig(serverConfig);
+ }
+
+ public void tearDown()
+ {
+ _rawLogger.clearLogMessages();
+ }
+
+ private void setUpWithConfig(ServerConfiguration serverConfig) throws AMQException
+ {
_rawLogger = new UnitTestMessageLogger();
RootMessageLogger rootLogger =
new RootMessageLoggerImpl(serverConfig, _rawLogger);
+ VirtualHost virtualHost = ApplicationRegistry.getInstance().
+ getVirtualHostRegistry().getVirtualHosts().iterator().next();
+
// Create a single session for this test.
- // Re-use is ok as we are testing the LogActor object is set correctly,
- // not the value of the output.
- AMQProtocolSession session = new MockProtocolSession(new MemoryMessageStore());
- // Use the first Virtualhost that has been defined to initialise
- // the MockProtocolSession. This prevents a NPE when the
- // AMQPActor attempts to lookup the name of the VHost.
- try
- {
- session.setVirtualHost(ApplicationRegistry.getInstance().
- getVirtualHostRegistry().getVirtualHosts().
- toArray(new VirtualHost[1])[0]);
- }
- catch (AMQException e)
- {
- fail("Unable to set virtualhost on session:" + e.getMessage());
- }
+ AMQProtocolSession session = new InternalTestProtocolSession(virtualHost);
_amqpActor = new AMQPConnectionActor(session, rootLogger);
}
- public void tearDown()
- {
- _rawLogger.clearLogMessages();
- }
-
/**
* Test the AMQPActor logging as a Connection level.
*
@@ -98,26 +89,10 @@ public class AMQPConnectionActorTest extends TestCase
*
* The log message should be fully repalaced (no '{n}' values) and should
* not contain any channel identification.
- *
*/
public void testConnection()
{
- final String message = "test logging";
-
- _amqpActor.message(new LogSubject()
- {
- public String toString()
- {
- return "[AMQPActorTest]";
- }
-
- }, new LogMessage()
- {
- public String toString()
- {
- return message;
- }
- });
+ final String message = sendLogMessage();
List<Object> logs = _rawLogger.getLogMessages();
@@ -129,7 +104,7 @@ public class AMQPConnectionActorTest extends TestCase
// Verify that the message has the correct type
assertTrue("Message contains the [con: prefix",
- logs.get(0).toString().contains("[con:"));
+ logs.get(0).toString().contains("[con:"));
// Verify that all the values were presented to the MessageFormatter
// so we will not end up with '{n}' entries in the log.
@@ -138,11 +113,9 @@ public class AMQPConnectionActorTest extends TestCase
// Verify that the logged message does not contains the 'ch:' marker
assertFalse("Message was logged with a channel identifier." + logs.get(0),
- logs.get(0).toString().contains("/ch:"));
+ logs.get(0).toString().contains("/ch:"));
}
-
-
public void testConnectionLoggingOff() throws ConfigurationException, AMQException
{
Configuration config = new PropertiesConfiguration();
@@ -150,31 +123,18 @@ public class AMQPConnectionActorTest extends TestCase
ServerConfiguration serverConfig = new ServerConfiguration(config);
- _rawLogger = new UnitTestMessageLogger();
- RootMessageLogger rootLogger =
- new RootMessageLoggerImpl(serverConfig, _rawLogger);
+ setUpWithConfig(serverConfig);
- // Create a single session for this test.
- // Re-use is ok as we are testing the LogActor object is set correctly,
- // not the value of the output.
- AMQProtocolSession session = new MockProtocolSession(new MemoryMessageStore());
- // Use the first Virtualhost that has been defined to initialise
- // the MockProtocolSession. This prevents a NPE when the
- // AMQPActor attempts to lookup the name of the VHost.
- try
- {
- session.setVirtualHost(ApplicationRegistry.getInstance().
- getVirtualHostRegistry().getVirtualHosts().
- toArray(new VirtualHost[1])[0]);
- }
- catch (AMQException e)
- {
- fail("Unable to set virtualhost on session:" + e.getMessage());
- }
+ sendLogMessage();
+ List<Object> logs = _rawLogger.getLogMessages();
- _amqpActor = new AMQPConnectionActor(session, rootLogger);
+ assertEquals("Message log size not as expected.", 0, logs.size());
+
+ }
+ private String sendLogMessage()
+ {
final String message = "test logging";
_amqpActor.message(new LogSubject()
@@ -191,12 +151,7 @@ public class AMQPConnectionActorTest extends TestCase
return message;
}
});
-
- List<Object> logs = _rawLogger.getLogMessages();
-
- assertEquals("Message log size not as expected.", 0, logs.size());
-
+ return message;
}
-
}
diff --git a/java/broker/src/test/java/org/apache/qpid/server/logging/actors/CurrentActorTest.java b/java/broker/src/test/java/org/apache/qpid/server/logging/actors/CurrentActorTest.java
index c1cc3253a8..e7dc0ea5da 100644
--- a/java/broker/src/test/java/org/apache/qpid/server/logging/actors/CurrentActorTest.java
+++ b/java/broker/src/test/java/org/apache/qpid/server/logging/actors/CurrentActorTest.java
@@ -26,9 +26,8 @@ import org.apache.qpid.server.AMQChannel;
import org.apache.qpid.server.logging.LogMessage;
import org.apache.qpid.server.logging.LogSubject;
import org.apache.qpid.server.protocol.AMQProtocolSession;
-import org.apache.qpid.server.queue.MockProtocolSession;
+import org.apache.qpid.server.protocol.InternalTestProtocolSession;
import org.apache.qpid.server.registry.ApplicationRegistry;
-import org.apache.qpid.server.store.MemoryMessageStore;
import org.apache.qpid.server.virtualhost.VirtualHost;
/**
@@ -61,27 +60,16 @@ public class CurrentActorTest extends TestCase
final Exception[] _errors = new Exception[THREADS];
// Create a single session for this test.
- AMQProtocolSession session;
+ AMQProtocolSession _session;
- public void setUp()
+ public void setUp() throws AMQException
{
// Create a single session for this test.
- // Re-use is ok as we are testing the LogActor object is set correctly,
- // not the value of the output.
- session = new MockProtocolSession(new MemoryMessageStore());
- // Use the first Virtualhost that has been defined to initialise
- // the MockProtocolSession. This prevents a NPE when the
- // AMQPActor attempts to lookup the name of the VHost.
- try
- {
- session.setVirtualHost(ApplicationRegistry.getInstance().
- getVirtualHostRegistry().getVirtualHosts().
- toArray(new VirtualHost[1])[0]);
- }
- catch (AMQException e)
- {
- fail("Unable to set virtualhost on session:" + e.getMessage());
- }
+ VirtualHost virtualHost = ApplicationRegistry.getInstance().
+ getVirtualHostRegistry().getVirtualHosts().iterator().next();
+
+ // Create a single session for this test.
+ _session = new InternalTestProtocolSession(virtualHost);
}
public void testFIFO() throws AMQException
@@ -89,7 +77,7 @@ public class CurrentActorTest extends TestCase
// Create a new actor using retrieving the rootMessageLogger from
// the default ApplicationRegistry.
//fixme reminder that we need a better approach for broker testing.
- AMQPConnectionActor connectionActor = new AMQPConnectionActor(session,
+ AMQPConnectionActor connectionActor = new AMQPConnectionActor(_session,
ApplicationRegistry.getInstance().
getRootMessageLogger());
@@ -120,7 +108,7 @@ public class CurrentActorTest extends TestCase
* to push the actor on to the stack
*/
- AMQChannel channel = new AMQChannel(session, 1, session.getVirtualHost().getMessageStore());
+ AMQChannel channel = new AMQChannel(_session, 1, _session.getVirtualHost().getMessageStore());
AMQPChannelActor channelActor = new AMQPChannelActor(channel,
ApplicationRegistry.getInstance().
@@ -218,7 +206,7 @@ public class CurrentActorTest extends TestCase
// Create a new actor using retrieving the rootMessageLogger from
// the default ApplicationRegistry.
//fixme reminder that we need a better approach for broker testing.
- AMQPConnectionActor actor = new AMQPConnectionActor(session,
+ AMQPConnectionActor actor = new AMQPConnectionActor(_session,
ApplicationRegistry.getInstance().
getRootMessageLogger());
diff --git a/java/broker/src/test/java/org/apache/qpid/server/logging/subjects/AbstractTestLogSubject.java b/java/broker/src/test/java/org/apache/qpid/server/logging/subjects/AbstractTestLogSubject.java
index 8a5b63d18e..974f2f808d 100644
--- a/java/broker/src/test/java/org/apache/qpid/server/logging/subjects/AbstractTestLogSubject.java
+++ b/java/broker/src/test/java/org/apache/qpid/server/logging/subjects/AbstractTestLogSubject.java
@@ -36,6 +36,9 @@ import org.apache.qpid.server.logging.actors.TestBlankActor;
import org.apache.qpid.server.logging.rawloggers.UnitTestMessageLogger;
import org.apache.qpid.server.queue.AMQQueue;
import org.apache.qpid.server.virtualhost.VirtualHost;
+import org.apache.qpid.server.registry.ApplicationRegistry;
+import org.apache.qpid.server.protocol.InternalTestProtocolSession;
+import org.apache.qpid.server.protocol.AMQProtocolSession;
import java.util.List;
@@ -44,6 +47,19 @@ public abstract class AbstractTestLogSubject extends TestCase
protected Configuration _config = new PropertiesConfiguration();
protected LogSubject _subject = null;
+ AMQProtocolSession _session;
+
+ public void setUp() throws Exception
+ {
+ super.setUp();
+
+ VirtualHost virtualHost = ApplicationRegistry.getInstance().
+ getVirtualHostRegistry().getVirtualHosts().iterator().next();
+
+ // Create a single session for this test.
+ _session = new InternalTestProtocolSession(virtualHost);
+ }
+
protected List<Object> performLog() throws ConfigurationException
{
if (_subject == null)
diff --git a/java/broker/src/test/java/org/apache/qpid/server/logging/subjects/ChannelLogSubjectTest.java b/java/broker/src/test/java/org/apache/qpid/server/logging/subjects/ChannelLogSubjectTest.java
index 9d5cb70f4b..75f31d53d1 100644
--- a/java/broker/src/test/java/org/apache/qpid/server/logging/subjects/ChannelLogSubjectTest.java
+++ b/java/broker/src/test/java/org/apache/qpid/server/logging/subjects/ChannelLogSubjectTest.java
@@ -20,13 +20,7 @@
*/
package org.apache.qpid.server.logging.subjects;
-import org.apache.qpid.AMQException;
import org.apache.qpid.server.AMQChannel;
-import org.apache.qpid.server.protocol.AMQProtocolSession;
-import org.apache.qpid.server.queue.MockProtocolSession;
-import org.apache.qpid.server.registry.ApplicationRegistry;
-import org.apache.qpid.server.store.MemoryMessageStore;
-import org.apache.qpid.server.virtualhost.VirtualHost;
public class ChannelLogSubjectTest extends ConnectionLogSubjectTest
{
@@ -37,24 +31,6 @@ public class ChannelLogSubjectTest extends ConnectionLogSubjectTest
{
super.setUp();
- // Create a single session for this test.
- // Re-use is ok as we are testing the LogActor object is set correctly,
- // not the value of the output.
- _session = new MockProtocolSession(new MemoryMessageStore());
- // Use the first Virtualhost that has been defined to initialise
- // the MockProtocolSession. This prevents a NPE when the
- // AMQPActor attempts to lookup the name of the VHost.
- try
- {
- _session.setVirtualHost(ApplicationRegistry.getInstance().
- getVirtualHostRegistry().getVirtualHosts().
- toArray(new VirtualHost[1])[0]);
- }
- catch (AMQException e)
- {
- fail("Unable to set virtualhost on session:" + e.getMessage());
- }
-
AMQChannel channel = new AMQChannel(_session, _channelID, _session.getVirtualHost().getMessageStore());
_subject = new ChannelLogSubject(channel);
diff --git a/java/broker/src/test/java/org/apache/qpid/server/logging/subjects/ConnectionLogSubjectTest.java b/java/broker/src/test/java/org/apache/qpid/server/logging/subjects/ConnectionLogSubjectTest.java
index ff2d9b5e11..0eb9901757 100644
--- a/java/broker/src/test/java/org/apache/qpid/server/logging/subjects/ConnectionLogSubjectTest.java
+++ b/java/broker/src/test/java/org/apache/qpid/server/logging/subjects/ConnectionLogSubjectTest.java
@@ -20,39 +20,13 @@
*/
package org.apache.qpid.server.logging.subjects;
-import org.apache.qpid.AMQException;
-import org.apache.qpid.server.protocol.AMQProtocolSession;
-import org.apache.qpid.server.queue.MockProtocolSession;
-import org.apache.qpid.server.registry.ApplicationRegistry;
-import org.apache.qpid.server.store.MemoryMessageStore;
-import org.apache.qpid.server.virtualhost.VirtualHost;
-
public class ConnectionLogSubjectTest extends AbstractTestLogSubject
{
- AMQProtocolSession _session;
public void setUp() throws Exception
{
super.setUp();
- // Create a single session for this test.
- // Re-use is ok as we are testing the LogActor object is set correctly,
- // not the value of the output.
- _session = new MockProtocolSession(new MemoryMessageStore());
- // Use the first Virtualhost that has been defined to initialise
- // the MockProtocolSession. This prevents a NPE when the
- // AMQPActor attempts to lookup the name of the VHost.
- try
- {
- _session.setVirtualHost(ApplicationRegistry.getInstance().
- getVirtualHostRegistry().getVirtualHosts().
- toArray(new VirtualHost[1])[0]);
- }
- catch (AMQException e)
- {
- fail("Unable to set virtualhost on session:" + e.getMessage());
- }
-
_subject = new ConnectionLogSubject(_session);
}
@@ -63,7 +37,7 @@ public class ConnectionLogSubjectTest extends AbstractTestLogSubject
*/
protected void validateLogStatement(String message)
{
- verifyConnection(_session.getSessionID(), "MockProtocolSessionUser", "null", "test", message);
+ verifyConnection(_session.getSessionID(), "InternalTestProtocolSession", "127.0.0.1:1", "test", message);
}
}
diff --git a/java/broker/src/test/java/org/apache/qpid/server/logging/subjects/SubscriptionLogSubjectTest.java b/java/broker/src/test/java/org/apache/qpid/server/logging/subjects/SubscriptionLogSubjectTest.java
index 0b0b0d78d1..e217497b7b 100644
--- a/java/broker/src/test/java/org/apache/qpid/server/logging/subjects/SubscriptionLogSubjectTest.java
+++ b/java/broker/src/test/java/org/apache/qpid/server/logging/subjects/SubscriptionLogSubjectTest.java
@@ -20,17 +20,13 @@
*/
package org.apache.qpid.server.logging.subjects;
-import org.apache.qpid.AMQException;
import org.apache.qpid.framing.AMQShortString;
import org.apache.qpid.framing.FieldTable;
import org.apache.qpid.server.AMQChannel;
import org.apache.qpid.server.flow.LimitlessCreditManager;
-import org.apache.qpid.server.protocol.AMQProtocolSession;
import org.apache.qpid.server.queue.AMQQueue;
import org.apache.qpid.server.queue.MockAMQQueue;
-import org.apache.qpid.server.queue.MockProtocolSession;
import org.apache.qpid.server.registry.ApplicationRegistry;
-import org.apache.qpid.server.store.MemoryMessageStore;
import org.apache.qpid.server.subscription.Subscription;
import org.apache.qpid.server.subscription.SubscriptionFactory;
import org.apache.qpid.server.subscription.SubscriptionFactoryImpl;
@@ -57,31 +53,13 @@ public class SubscriptionLogSubjectTest extends AbstractTestLogSubject
_queue = new MockAMQQueue("QueueLogSubjectTest");
((MockAMQQueue) _queue).setVirtualHost(_testVhost);
- // Create a single session for this test.
- // Re-use is ok as we are testing the LogActor object is set correctly,
- // not the value of the output.
- AMQProtocolSession session = new MockProtocolSession(new MemoryMessageStore());
- // Use the first Virtualhost that has been defined to initialise
- // the MockProtocolSession. This prevents a NPE when the
- // AMQPActor attempts to lookup the name of the VHost.
- try
- {
- session.setVirtualHost(ApplicationRegistry.getInstance().
- getVirtualHostRegistry().getVirtualHosts().
- toArray(new VirtualHost[1])[0]);
- }
- catch (AMQException e)
- {
- fail("Unable to set virtualhost on session:" + e.getMessage());
- }
+ AMQChannel channel = new AMQChannel(_session, _channelID, _session.getVirtualHost().getMessageStore());
- AMQChannel channel = new AMQChannel(session, _channelID, session.getVirtualHost().getMessageStore());
-
- session.addChannel(channel);
+ _session.addChannel(channel);
SubscriptionFactory factory = new SubscriptionFactoryImpl();
- _subscription = factory.createSubscription(_channelID, session, new AMQShortString("cTag"),
+ _subscription = factory.createSubscription(_channelID, _session, new AMQShortString("cTag"),
_acks, _filters, _noLocal,
new LimitlessCreditManager());
@@ -102,13 +80,13 @@ public class SubscriptionLogSubjectTest extends AbstractTestLogSubject
String subscriptionSlice = getSlice("sub:"
+ _subscription.getSubscriptionID(),
message);
-
+
assertNotNull("Unable to locate subscription 'sub:" +
_subscription.getSubscriptionID() + "'");
// Adding the ')' is a bit ugly but SubscriptionLogSubject is the only
// Subject that nests () and so the simple parser of checking for the
// next ')' falls down.
- verifyQueue(subscriptionSlice+")", _queue);
+ verifyQueue(subscriptionSlice + ")", _queue);
}
}
diff --git a/java/broker/src/test/java/org/apache/qpid/server/protocol/InternalTestProtocolSession.java b/java/broker/src/test/java/org/apache/qpid/server/protocol/InternalTestProtocolSession.java
index 49c5f8a14b..37dfead2e5 100644
--- a/java/broker/src/test/java/org/apache/qpid/server/protocol/InternalTestProtocolSession.java
+++ b/java/broker/src/test/java/org/apache/qpid/server/protocol/InternalTestProtocolSession.java
@@ -26,7 +26,7 @@ import org.apache.qpid.framing.AMQShortString;
import org.apache.qpid.server.output.ProtocolOutputConverter;
import org.apache.qpid.server.queue.AMQMessage;
import org.apache.qpid.server.registry.ApplicationRegistry;
-import org.apache.qpid.server.AMQChannel;
+import org.apache.qpid.server.virtualhost.VirtualHost;
import java.util.ArrayList;
import java.util.HashMap;
@@ -34,7 +34,7 @@ import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.concurrent.atomic.AtomicInteger;
-import java.net.SocketAddress;
+import java.security.Principal;
public class InternalTestProtocolSession extends AMQMinaProtocolSession implements ProtocolOutputConverter
{
@@ -42,7 +42,7 @@ public class InternalTestProtocolSession extends AMQMinaProtocolSession implemen
final Map<Integer, Map<AMQShortString, LinkedList<DeliveryPair>>> _channelDelivers;
private AtomicInteger _deliveryCount = new AtomicInteger(0);
- public InternalTestProtocolSession() throws AMQException
+ public InternalTestProtocolSession(VirtualHost virtualHost) throws AMQException
{
super(new TestIoSession(),
ApplicationRegistry.getInstance().getVirtualHostRegistry(),
@@ -50,6 +50,16 @@ public class InternalTestProtocolSession extends AMQMinaProtocolSession implemen
_channelDelivers = new HashMap<Integer, Map<AMQShortString, LinkedList<DeliveryPair>>>();
+ // Need to authenticate session for it to be representative testing.
+ setAuthorizedID(new Principal()
+ {
+ public String getName()
+ {
+ return "InternalTestProtocolSession";
+ }
+ });
+
+ setVirtualHost(virtualHost);
}
public ProtocolOutputConverter getProtocolOutputConverter()
diff --git a/java/broker/src/test/java/org/apache/qpid/server/queue/AMQQueueAlertTest.java b/java/broker/src/test/java/org/apache/qpid/server/queue/AMQQueueAlertTest.java
index 6589f46c7b..db7312202b 100644
--- a/java/broker/src/test/java/org/apache/qpid/server/queue/AMQQueueAlertTest.java
+++ b/java/broker/src/test/java/org/apache/qpid/server/queue/AMQQueueAlertTest.java
@@ -32,6 +32,7 @@ import org.apache.qpid.server.txn.TransactionalContext;
import org.apache.qpid.server.txn.NonTransactionalContext;
import org.apache.qpid.server.RequiredDeliveryException;
import org.apache.qpid.server.AMQChannel;
+import org.apache.qpid.server.logging.actors.CurrentActor;
import org.apache.qpid.server.subscription.Subscription;
import org.apache.qpid.server.subscription.SubscriptionFactoryImpl;
import org.apache.qpid.server.protocol.AMQMinaProtocolSession;
@@ -49,6 +50,7 @@ import java.util.ArrayList;
import java.util.LinkedList;
import java.util.Collections;
import java.util.Set;
+import java.security.Principal;
/** This class tests all the alerts an AMQQueue can throw based on threshold values of different parameters */
public class AMQQueueAlertTest extends TestCase
@@ -184,7 +186,6 @@ public class AMQQueueAlertTest extends TestCase
*/
public void testQueueDepthAlertWithSubscribers() throws Exception
{
- _protocolSession = new InternalTestProtocolSession();
AMQChannel channel = new AMQChannel(_protocolSession, 2, _messageStore);
_protocolSession.addChannel(channel);
@@ -295,12 +296,13 @@ public class AMQQueueAlertTest extends TestCase
super.setUp();
IApplicationRegistry applicationRegistry = ApplicationRegistry.getInstance(1);
_virtualHost = applicationRegistry.getVirtualHostRegistry().getVirtualHost("test");
- _protocolSession = new InternalTestProtocolSession();
-
+ _protocolSession = new InternalTestProtocolSession(_virtualHost);
+ CurrentActor.set(_protocolSession.getLogActor());
}
protected void tearDown()
{
+ CurrentActor.remove();
ApplicationRegistry.remove(1);
}
diff --git a/java/broker/src/test/java/org/apache/qpid/server/queue/AMQQueueMBeanTest.java b/java/broker/src/test/java/org/apache/qpid/server/queue/AMQQueueMBeanTest.java
index 1138b465cd..1acf8a3c31 100644
--- a/java/broker/src/test/java/org/apache/qpid/server/queue/AMQQueueMBeanTest.java
+++ b/java/broker/src/test/java/org/apache/qpid/server/queue/AMQQueueMBeanTest.java
@@ -175,7 +175,8 @@ public class AMQQueueMBeanTest extends TestCase
assertTrue(_queueMBean.getActiveConsumerCount() == 0);
- InternalTestProtocolSession protocolSession = new InternalTestProtocolSession();
+ InternalTestProtocolSession protocolSession = new InternalTestProtocolSession(_virtualHost);
+
AMQChannel channel = new AMQChannel(protocolSession, 1, _messageStore);
protocolSession.addChannel(channel);
@@ -372,7 +373,7 @@ public class AMQQueueMBeanTest extends TestCase
null);
_queueMBean = new AMQQueueMBean(_queue);
- _protocolSession = new InternalTestProtocolSession();
+ _protocolSession = new InternalTestProtocolSession(_virtualHost);
}
public void tearDown()
diff --git a/java/broker/src/test/java/org/apache/qpid/server/queue/AckTest.java b/java/broker/src/test/java/org/apache/qpid/server/queue/AckTest.java
index 9c2932c5e2..d360904dd7 100644
--- a/java/broker/src/test/java/org/apache/qpid/server/queue/AckTest.java
+++ b/java/broker/src/test/java/org/apache/qpid/server/queue/AckTest.java
@@ -29,6 +29,9 @@ import org.apache.qpid.framing.AMQShortString;
import org.apache.qpid.framing.abstraction.MessagePublishInfo;
import org.apache.qpid.server.AMQChannel;
import org.apache.qpid.server.RequiredDeliveryException;
+import org.apache.qpid.server.virtualhost.VirtualHost;
+import org.apache.qpid.server.protocol.InternalTestProtocolSession;
+import org.apache.qpid.server.protocol.AMQProtocolSession;
import org.apache.qpid.server.subscription.Subscription;
import org.apache.qpid.server.subscription.SubscriptionFactoryImpl;
import org.apache.qpid.server.flow.LimitlessCreditManager;
@@ -55,7 +58,7 @@ public class AckTest extends TestCase
private Subscription _subscription;
- private MockProtocolSession _protocolSession;
+ private AMQProtocolSession _protocolSession;
private TestMemoryMessageStore _messageStore;
@@ -66,19 +69,21 @@ public class AckTest extends TestCase
private AMQQueue _queue;
private static final AMQShortString DEFAULT_CONSUMER_TAG = new AMQShortString("conTag");
+ private VirtualHost _virtualHost;
protected void setUp() throws Exception
{
super.setUp();
ApplicationRegistry.initialise(new NullApplicationRegistry(), 1);
+ _virtualHost = ApplicationRegistry.getInstance().getVirtualHostRegistry().getVirtualHost("test");
_messageStore = new TestMemoryMessageStore();
- _protocolSession = new MockProtocolSession(_messageStore);
+ _protocolSession = new InternalTestProtocolSession(_virtualHost);
_channel = new AMQChannel(_protocolSession,5, _messageStore /*dont need exchange registry*/);
_protocolSession.addChannel(_channel);
- _queue = AMQQueueFactory.createAMQQueueImpl(new AMQShortString("myQ"), false, new AMQShortString("guest"), true, ApplicationRegistry.getInstance().getVirtualHostRegistry().getVirtualHost("test"),
+ _queue = AMQQueueFactory.createAMQQueueImpl(new AMQShortString("myQ"), false, new AMQShortString("guest"), true, _virtualHost,
null);
}
diff --git a/java/broker/src/test/java/org/apache/qpid/server/queue/MockProtocolSession.java b/java/broker/src/test/java/org/apache/qpid/server/queue/MockProtocolSession.java
deleted file mode 100644
index c301969ae5..0000000000
--- a/java/broker/src/test/java/org/apache/qpid/server/queue/MockProtocolSession.java
+++ /dev/null
@@ -1,292 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.qpid.server.queue;
-
-import org.apache.qpid.AMQException;
-import org.apache.qpid.AMQConnectionException;
-import org.apache.qpid.framing.*;
-import org.apache.qpid.server.AMQChannel;
-import org.apache.qpid.server.logging.LogActor;
-import org.apache.qpid.server.output.ProtocolOutputConverter;
-import org.apache.qpid.server.output.ProtocolOutputConverterRegistry;
-import org.apache.qpid.server.virtualhost.VirtualHost;
-import org.apache.qpid.server.protocol.AMQProtocolSession;
-import org.apache.qpid.server.store.MessageStore;
-import org.apache.qpid.transport.Sender;
-
-import javax.security.sasl.SaslServer;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.concurrent.atomic.AtomicLong;
-import java.security.Principal;
-import java.net.SocketAddress;
-
-/**
- * A protocol session that can be used for testing purposes.
- */
-public class MockProtocolSession implements AMQProtocolSession
-{
- private MessageStore _messageStore;
-
- private Map<Integer, AMQChannel> _channelMap = new HashMap<Integer, AMQChannel>();
-
- private static final AtomicLong idGenerator = new AtomicLong(0);
-
- private final long _sessionID = idGenerator.getAndIncrement();
- private VirtualHost _virtualHost;
-
- public MockProtocolSession(MessageStore messageStore)
- {
- _messageStore = messageStore;
- }
-
- public long getSessionID()
- {
- return _sessionID;
- }
-
- public LogActor getLogActor()
- {
- return null; //To change body of implemented methods use File | Settings | File Templates.
- }
-
- public void dataBlockReceived(AMQDataBlock message) throws Exception
- {
- }
-
- public void writeFrame(AMQDataBlock frame)
- {
- }
-
- public AMQShortString getContextKey()
- {
- return null;
- }
-
- public void setContextKey(AMQShortString contextKey)
- {
- }
-
- public AMQChannel getChannel(int channelId)
- {
- AMQChannel channel = _channelMap.get(channelId);
- if (channel == null)
- {
- throw new IllegalArgumentException("Invalid channel id: " + channelId);
- }
- else
- {
- return channel;
- }
- }
-
- public void addChannel(AMQChannel channel)
- {
- if (channel == null)
- {
- throw new IllegalArgumentException("Channel must not be null");
- }
- else
- {
- _channelMap.put(channel.getChannelId(), channel);
- }
- }
-
- public void closeChannel(int channelId) throws AMQException
- {
- }
-
- public void closeChannelOk(int channelId)
- {
-
- }
-
- public boolean channelAwaitingClosure(int channelId)
- {
- return false;
- }
-
- public void removeChannel(int channelId)
- {
- _channelMap.remove(channelId);
- }
-
- public void initHeartbeats(int delay)
- {
- }
-
- public void closeSession() throws AMQException
- {
- }
-
- public void closeConnection(int channelId, AMQConnectionException e, boolean closeIoSession) throws AMQException
- {
- }
-
- public Object getKey()
- {
- return null;
- }
-
- public String getLocalFQDN()
- {
- return null;
- }
-
- public SaslServer getSaslServer()
- {
- return null;
- }
-
- public void setSaslServer(SaslServer saslServer)
- {
- }
-
- public FieldTable getClientProperties()
- {
- return null;
- }
-
- public void setClientProperties(FieldTable clientProperties)
- {
- }
-
- public Object getClientIdentifier()
- {
- return null;
- }
-
- public VirtualHost getVirtualHost()
- {
- return _virtualHost;
- }
-
- public void setVirtualHost(VirtualHost virtualHost)
- {
- _virtualHost = virtualHost;
- }
-
- public void addSessionCloseTask(Task task)
- {
- //To change body of implemented methods use File | Settings | File Templates.
- }
-
- public void removeSessionCloseTask(Task task)
- {
- //To change body of implemented methods use File | Settings | File Templates.
- }
-
- public ProtocolOutputConverter getProtocolOutputConverter()
- {
- return ProtocolOutputConverterRegistry.getConverter(this);
- }
-
- public void setAuthorizedID(Principal authorizedID)
- {
- //To change body of implemented methods use File | Settings | File Templates.
- }
-
- public Principal getAuthorizedID()
- {
- return new Principal()
- {
- public String getName()
- {
- return "MockProtocolSessionUser";
- }
- };
-
- }
-
- public SocketAddress getRemoteAddress()
- {
- return null; //To change body of implemented methods use File | Settings | File Templates.
- }
-
- public MethodRegistry getMethodRegistry()
- {
- return null; //To change body of implemented methods use File | Settings | File Templates.
- }
-
- public void methodFrameReceived(int channelId, AMQMethodBody body)
- {
- //To change body of implemented methods use File | Settings | File Templates.
- }
-
- public void contentHeaderReceived(int channelId, ContentHeaderBody body)
- {
- //To change body of implemented methods use File | Settings | File Templates.
- }
-
- public void contentBodyReceived(int channelId, ContentBody body)
- {
- //To change body of implemented methods use File | Settings | File Templates.
- }
-
- public void heartbeatBodyReceived(int channelId, HeartbeatBody body)
- {
- //To change body of implemented methods use File | Settings | File Templates.
- }
-
- public MethodDispatcher getMethodDispatcher()
- {
- return null; //To change body of implemented methods use File | Settings | File Templates.
- }
-
- public ProtocolSessionIdentifier getSessionIdentifier()
- {
- return null;
- }
-
- public byte getProtocolMajorVersion()
- {
- return getProtocolVersion().getMajorVersion();
- }
-
- public byte getProtocolMinorVersion()
- {
- return getProtocolVersion().getMinorVersion();
- }
-
-
- public ProtocolVersion getProtocolVersion()
- {
- return ProtocolVersion.getLatestSupportedVersion(); //To change body of implemented methods use File | Settings | File Templates.
- }
-
-
- public VersionSpecificRegistry getRegistry()
- {
- return null; //To change body of implemented methods use File | Settings | File Templates.
- }
-
- public void setSender(Sender<java.nio.ByteBuffer> sender)
- {
- // FIXME AS TODO
-
- }
-
- public void init()
- {
- // TODO Auto-generated method stub
-
- }
-}
diff --git a/java/broker/src/test/java/org/apache/qpid/server/security/access/ACLManagerTest.java b/java/broker/src/test/java/org/apache/qpid/server/security/access/ACLManagerTest.java
index 6c6835ccca..8262ca0e29 100644
--- a/java/broker/src/test/java/org/apache/qpid/server/security/access/ACLManagerTest.java
+++ b/java/broker/src/test/java/org/apache/qpid/server/security/access/ACLManagerTest.java
@@ -31,15 +31,15 @@ import org.apache.commons.configuration.ConfigurationException;
import org.apache.commons.configuration.PropertiesConfiguration;
import org.apache.commons.configuration.XMLConfiguration;
import org.apache.qpid.server.configuration.SecurityConfiguration;
-import org.apache.qpid.server.configuration.ServerConfiguration;
import org.apache.qpid.server.exchange.Exchange;
import org.apache.qpid.server.plugins.MockPluginManager;
import org.apache.qpid.server.plugins.PluginManager;
import org.apache.qpid.server.protocol.AMQProtocolSession;
+import org.apache.qpid.server.protocol.InternalTestProtocolSession;
import org.apache.qpid.server.queue.AMQQueue;
import org.apache.qpid.server.queue.MockAMQQueue;
-import org.apache.qpid.server.queue.MockProtocolSession;
-import org.apache.qpid.server.store.TestableMemoryMessageStore;
+import org.apache.qpid.server.virtualhost.VirtualHost;
+import org.apache.qpid.server.registry.ApplicationRegistry;
public class ACLManagerTest extends TestCase
{
@@ -64,8 +64,13 @@ public class ACLManagerTest extends TestCase
_pluginManager = new MockPluginManager("");
_authzManager = new ACLManager(_conf, _pluginManager);
-
- _session = new MockProtocolSession(new TestableMemoryMessageStore());
+
+
+ VirtualHost virtualHost = ApplicationRegistry.getInstance().
+ getVirtualHostRegistry().getVirtualHosts().iterator().next();
+
+ // Create a single session for this test.
+ _session = new InternalTestProtocolSession(virtualHost);
}
public void testACLManagerConfigurationPluginManager() throws Exception
diff --git a/java/broker/src/test/java/org/apache/qpid/server/store/MessageStoreTest.java b/java/broker/src/test/java/org/apache/qpid/server/store/MessageStoreTest.java
index 4317a501ed..30b571ef63 100644
--- a/java/broker/src/test/java/org/apache/qpid/server/store/MessageStoreTest.java
+++ b/java/broker/src/test/java/org/apache/qpid/server/store/MessageStoreTest.java
@@ -352,7 +352,7 @@ public class MessageStoreTest extends TestCase
messageInfo,
new NonTransactionalContext(_virtualHost.getMessageStore(),
new StoreContext(), null, null),
- new InternalTestProtocolSession());
+ new InternalTestProtocolSession(_virtualHost));
}
catch (AMQException e)
{
diff --git a/java/broker/src/test/java/org/apache/qpid/server/util/InternalBrokerBaseCase.java b/java/broker/src/test/java/org/apache/qpid/server/util/InternalBrokerBaseCase.java
index 585ed9a538..b706ee51d8 100644
--- a/java/broker/src/test/java/org/apache/qpid/server/util/InternalBrokerBaseCase.java
+++ b/java/broker/src/test/java/org/apache/qpid/server/util/InternalBrokerBaseCase.java
@@ -32,6 +32,7 @@ import org.apache.qpid.framing.FieldTable;
import org.apache.qpid.framing.abstraction.MessagePublishInfo;
import org.apache.qpid.server.AMQChannel;
import org.apache.qpid.server.ConsumerTagNotUniqueException;
+import org.apache.qpid.server.logging.actors.CurrentActor;
import org.apache.qpid.server.configuration.ServerConfiguration;
import org.apache.qpid.server.exchange.Exchange;
import org.apache.qpid.server.protocol.InternalTestProtocolSession;
@@ -79,17 +80,8 @@ public class InternalBrokerBaseCase extends TestCase
_queue.bind(defaultExchange, QUEUE_NAME, null);
- _session = new InternalTestProtocolSession();
-
- _session.setAuthorizedID(new Principal()
- {
- public String getName()
- {
- return "InternalBrokerBaseCaseUser";
- }
- });
-
- _session.setVirtualHost(_virtualHost);
+ _session = new InternalTestProtocolSession(_virtualHost);
+ CurrentActor.set(_session.getLogActor());
_channel = new MockChannel(_session, 1, _messageStore);
@@ -98,6 +90,7 @@ public class InternalBrokerBaseCase extends TestCase
public void tearDown() throws Exception
{
+ CurrentActor.remove();
ApplicationRegistry.remove(1);
super.tearDown();
}