diff options
author | Rajith Muditha Attapattu <rajith@apache.org> | 2006-11-27 14:38:44 +0000 |
---|---|---|
committer | Rajith Muditha Attapattu <rajith@apache.org> | 2006-11-27 14:38:44 +0000 |
commit | 9b4258ddd73effcc7f127dd6f4269485123c5d36 (patch) | |
tree | ed1c8cf6cb20a2293c56d09e79d0b5fffa9ea650 /java | |
parent | 1baf0b2eb3679691132f7ccac60dfffe9324c742 (diff) | |
download | qpid-python-9b4258ddd73effcc7f127dd6f4269485123c5d36.tar.gz |
Changes for JMS TCK Testing
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@479640 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java')
4 files changed, 217 insertions, 3 deletions
diff --git a/java/client/src/main/java/org/apache/qpid/client/AMQSession.java b/java/client/src/main/java/org/apache/qpid/client/AMQSession.java index 335990b8af..57b941a060 100644 --- a/java/client/src/main/java/org/apache/qpid/client/AMQSession.java +++ b/java/client/src/main/java/org/apache/qpid/client/AMQSession.java @@ -991,7 +991,8 @@ public class AMQSession extends Closeable implements Session, QueueSession, Topi public QueueSender createSender(Queue queue) throws JMSException { - return (QueueSender) createProducer(queue); + //return (QueueSender) createProducer(queue); + return new QueueSenderAdapter(createProducer(queue),queue); } public Topic createTopic(String topicName) throws JMSException @@ -1070,7 +1071,8 @@ public class AMQSession extends Closeable implements Session, QueueSession, Topi public TopicPublisher createPublisher(Topic topic) throws JMSException { - return (TopicPublisher) createProducer(topic); + //return (TopicPublisher) createProducer(topic); + return new TopicPublisherAdapter(createProducer(topic), topic); } public QueueBrowser createBrowser(Queue queue) throws JMSException diff --git a/java/client/src/main/java/org/apache/qpid/client/QueueSenderAdapter.java b/java/client/src/main/java/org/apache/qpid/client/QueueSenderAdapter.java new file mode 100644 index 0000000000..cfdea2ad15 --- /dev/null +++ b/java/client/src/main/java/org/apache/qpid/client/QueueSenderAdapter.java @@ -0,0 +1,104 @@ +package org.apache.qpid.client; + +import javax.jms.Destination; +import javax.jms.JMSException; +import javax.jms.Message; +import javax.jms.MessageProducer; +import javax.jms.Queue; +import javax.jms.QueueSender; + +public class QueueSenderAdapter implements QueueSender { + + private MessageProducer delegate; + private Queue queue; + + public QueueSenderAdapter(MessageProducer msgProducer, Queue queue){ + delegate = msgProducer; + this.queue = queue; + } + + public Queue getQueue() throws JMSException { + return queue; + } + + public void send(Message msg) throws JMSException { + delegate.send(msg); + } + + public void send(Queue queue, Message msg) throws JMSException { + delegate.send(queue, msg); + } + + public void publish(Message msg, int deliveryMode, int priority, long timeToLive) + throws JMSException { + + delegate.send(msg, deliveryMode,priority,timeToLive); + } + + public void send(Queue queue,Message msg, int deliveryMode, int priority, long timeToLive) + throws JMSException { + + delegate.send(queue,msg, deliveryMode,priority,timeToLive); + } + + public void close() throws JMSException { + delegate.close(); + } + + public int getDeliveryMode() throws JMSException { + return delegate.getDeliveryMode(); + } + + public Destination getDestination() throws JMSException { + return delegate.getDestination(); + } + + public boolean getDisableMessageID() throws JMSException { + return delegate.getDisableMessageID(); + } + + public boolean getDisableMessageTimestamp() throws JMSException { + return delegate.getDisableMessageTimestamp(); + } + + public int getPriority() throws JMSException { + return delegate.getPriority(); + } + + public long getTimeToLive() throws JMSException { + return delegate.getTimeToLive(); + } + + public void send(Destination dest, Message msg) throws JMSException { + delegate.send(dest,msg); + } + + public void send(Message msg, int deliveryMode, int priority, long timeToLive) + throws JMSException { + delegate.send(msg, deliveryMode,priority,timeToLive); + } + + public void send(Destination dest, Message msg, int deliveryMode, int priority, long timeToLive) throws JMSException { + delegate.send(dest,msg, deliveryMode,priority,timeToLive); + } + + public void setDeliveryMode(int deliveryMode) throws JMSException { + delegate.setDeliveryMode(deliveryMode); + } + + public void setDisableMessageID(boolean disableMessageID) throws JMSException { + delegate.setDisableMessageID(disableMessageID); + } + + public void setDisableMessageTimestamp(boolean disableMessageTimestamp) throws JMSException { + delegate.setDisableMessageTimestamp(disableMessageTimestamp); + } + + public void setPriority(int priority) throws JMSException { + delegate.setPriority(priority); + } + + public void setTimeToLive(long timeToLive) throws JMSException { + delegate.setTimeToLive(timeToLive); + } +} diff --git a/java/client/src/main/java/org/apache/qpid/client/TopicPublisherAdapter.java b/java/client/src/main/java/org/apache/qpid/client/TopicPublisherAdapter.java new file mode 100644 index 0000000000..53a42e5185 --- /dev/null +++ b/java/client/src/main/java/org/apache/qpid/client/TopicPublisherAdapter.java @@ -0,0 +1,107 @@ +package org.apache.qpid.client; + +import javax.jms.Destination; +import javax.jms.JMSException; +import javax.jms.Message; +import javax.jms.MessageProducer; +import javax.jms.Topic; +import javax.jms.TopicPublisher; + +public class TopicPublisherAdapter implements TopicPublisher { + + private MessageProducer delegate; + private Topic topic; + + public TopicPublisherAdapter(MessageProducer msgProducer, Topic topic){ + delegate = msgProducer; + this.topic = topic; + } + + public Topic getTopic() throws JMSException { + return topic; + } + + public void publish(Message msg) throws JMSException { + delegate.send(msg); + } + + public void publish(Topic topic, Message msg) throws JMSException { + delegate.send(topic,msg); + } + + public void publish(Message msg, int deliveryMode, int priority, long timeToLive) + throws JMSException { + delegate.send(msg, deliveryMode,priority,timeToLive); + } + + public void publish(Topic topic, Message msg, int deliveryMode, int priority, long timeToLive) + throws JMSException { + delegate.send(topic,msg, deliveryMode,priority,timeToLive); + } + + public void close() throws JMSException { + delegate.close(); + } + + public int getDeliveryMode() throws JMSException { + return delegate.getDeliveryMode(); + } + + public Destination getDestination() throws JMSException { + return delegate.getDestination(); + } + + public boolean getDisableMessageID() throws JMSException { + return delegate.getDisableMessageID(); + } + + public boolean getDisableMessageTimestamp() throws JMSException { + return delegate.getDisableMessageTimestamp(); + } + + public int getPriority() throws JMSException { + return delegate.getPriority(); + } + + public long getTimeToLive() throws JMSException { + return delegate.getTimeToLive(); + } + + public void send(Message msg) throws JMSException { + delegate.send(msg); + } + + public void send(Destination dest, Message msg) throws JMSException { + delegate.send(dest,msg); + } + + public void send(Message msg, int deliveryMode, int priority, long timeToLive) + throws JMSException { + delegate.send(msg, deliveryMode,priority,timeToLive); + } + + public void send(Destination dest, Message msg, int deliveryMode, int priority, long timeToLive) throws JMSException { + delegate.send(dest,msg, deliveryMode,priority,timeToLive); + } + + public void setDeliveryMode(int deliveryMode) throws JMSException { + delegate.setDeliveryMode(deliveryMode); + } + + public void setDisableMessageID(boolean disableMessageID) throws JMSException { + delegate.setDisableMessageID(disableMessageID); + } + + public void setDisableMessageTimestamp(boolean disableMessageTimestamp) throws JMSException { + delegate.setDisableMessageTimestamp(disableMessageTimestamp); + } + + public void setPriority(int priority) throws JMSException { + delegate.setPriority(priority); + } + + public void setTimeToLive(long timeToLive) throws JMSException { + delegate.setTimeToLive(timeToLive); + } + +} diff --git a/java/client/src/main/java/org/apache/qpid/client/message/AbstractJMSMessage.java b/java/client/src/main/java/org/apache/qpid/client/message/AbstractJMSMessage.java index a07a87b850..0c71b3f94c 100644 --- a/java/client/src/main/java/org/apache/qpid/client/message/AbstractJMSMessage.java +++ b/java/client/src/main/java/org/apache/qpid/client/message/AbstractJMSMessage.java @@ -217,7 +217,8 @@ public abstract class AbstractJMSMessage extends AMQMessage implements javax.jms public void setJMSType(String string) throws JMSException { - throw new JMSException("Cannot set JMS Type - it is implicitly defined based on message type"); + //throw new JMSException("Cannot set JMS Type - it is implicitly defined based on message type"); + // this is not spec comliant, should not throw the message } public long getJMSExpiration() throws JMSException |