diff options
3 files changed, 50 insertions, 9 deletions
diff --git a/java/broker/src/main/java/org/apache/qpid/server/queue/AMQMessage.java b/java/broker/src/main/java/org/apache/qpid/server/queue/AMQMessage.java index 072a668906..d7e317cfa5 100644 --- a/java/broker/src/main/java/org/apache/qpid/server/queue/AMQMessage.java +++ b/java/broker/src/main/java/org/apache/qpid/server/queue/AMQMessage.java @@ -167,6 +167,21 @@ public class AMQMessage } } + /** + * Used in testing only. This allows the passing of the content header immediately + * on construction. + * @param messageId + * @param publishBody + * @param txnContext + * @param contentHeader + */ + public AMQMessage(long messageId, BasicPublishBody publishBody, TransactionalContext txnContext, + ContentHeaderBody contentHeader) throws AMQException + { + this(messageId, publishBody, txnContext); + setContentHeaderBody(contentHeader); + } + protected AMQMessage(AMQMessage msg) throws AMQException { _publisher = msg._publisher; diff --git a/java/systests/src/test/java/org/apache/qpid/server/queue/MessageTestHelper.java b/java/systests/src/test/java/org/apache/qpid/server/queue/MessageTestHelper.java index 8570e6521f..8cf84e0dcf 100644 --- a/java/systests/src/test/java/org/apache/qpid/server/queue/MessageTestHelper.java +++ b/java/systests/src/test/java/org/apache/qpid/server/queue/MessageTestHelper.java @@ -26,14 +26,22 @@ import org.apache.qpid.server.store.MessageStore; import org.apache.qpid.server.store.SkeletonMessageStore; import org.apache.qpid.server.registry.ApplicationRegistry; import org.apache.qpid.server.util.TestApplicationRegistry; +import org.apache.qpid.server.txn.TransactionalContext; +import org.apache.qpid.server.txn.NonTransactionalContext; +import org.apache.qpid.server.RequiredDeliveryException; import org.apache.qpid.AMQException; import junit.framework.TestCase; +import java.util.LinkedList; + class MessageTestHelper extends TestCase { private final MessageStore _messageStore = new SkeletonMessageStore(); + private final TransactionalContext _txnContext = new NonTransactionalContext(_messageStore, null, + new LinkedList<RequiredDeliveryException>()); + MessageTestHelper() throws Exception { ApplicationRegistry.initialise(new TestApplicationRegistry()); @@ -48,7 +56,8 @@ class MessageTestHelper extends TestCase { BasicPublishBody publish = new BasicPublishBody(); publish.immediate = immediate; - return new AMQMessage(_messageStore, publish, new ContentHeaderBody(), null); + return new AMQMessage(_messageStore.getNewMessageId(), publish, _txnContext, + new ContentHeaderBody()); } } diff --git a/java/systests/src/test/java/org/apache/qpid/server/store/SkeletonMessageStore.java b/java/systests/src/test/java/org/apache/qpid/server/store/SkeletonMessageStore.java index bc0a8a7d64..61edba36f8 100644 --- a/java/systests/src/test/java/org/apache/qpid/server/store/SkeletonMessageStore.java +++ b/java/systests/src/test/java/org/apache/qpid/server/store/SkeletonMessageStore.java @@ -20,11 +20,12 @@ */ package org.apache.qpid.server.store; -import org.apache.qpid.server.queue.AMQMessage; +import org.apache.commons.configuration.Configuration; +import org.apache.qpid.AMQException; +import org.apache.qpid.framing.ContentBody; import org.apache.qpid.server.queue.AMQQueue; +import org.apache.qpid.server.queue.MessageMetaData; import org.apache.qpid.server.queue.QueueRegistry; -import org.apache.qpid.AMQException; -import org.apache.commons.configuration.Configuration; import java.util.List; import java.util.concurrent.atomic.AtomicLong; @@ -47,11 +48,7 @@ public class SkeletonMessageStore implements MessageStore public void close() throws Exception { - } - - public void put(AMQMessage msg) - { - } + } public void removeMessage(long messageId) { @@ -99,4 +96,24 @@ public class SkeletonMessageStore implements MessageStore { return _messageId.getAndIncrement(); } + + public void storeContentBodyChunk(long messageId, int index, ContentBody contentBody) throws AMQException + { + + } + + public void storeMessageMetaData(long messageId, MessageMetaData messageMetaData) throws AMQException + { + + } + + public MessageMetaData getMessageMetaData(long messageId) throws AMQException + { + return null; + } + + public ContentBody getContentBodyChunk(long messageId, int index) throws AMQException + { + return null; + } } |