summaryrefslogtreecommitdiff
path: root/qpid/java
diff options
context:
space:
mode:
authorRafael H. Schloming <rhs@apache.org>2008-04-16 18:03:22 +0000
committerRafael H. Schloming <rhs@apache.org>2008-04-16 18:03:22 +0000
commit065daecd48ec5df165cf33a771b6cd7c3ce7cb27 (patch)
tree7e7a7d116b93f14245d4a7f004bea4e7c9b1589b /qpid/java
parent131cbc9ca788eb62f48007e07a1f5b7394d4adfe (diff)
downloadqpid-python-065daecd48ec5df165cf33a771b6cd7c3ce7cb27.tar.gz
QPID-901: don't depend on constant values matching up when converting between JMS and AMQP delivery modes
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@648771 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java')
-rw-r--r--qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_10.java14
1 files changed, 13 insertions, 1 deletions
diff --git a/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_10.java b/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_10.java
index c3269880ad..167810a591 100644
--- a/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_10.java
+++ b/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_10.java
@@ -104,7 +104,19 @@ public class BasicMessageProducer_0_10 extends BasicMessageProducer
if (!deliveryProp.hasDeliveryMode() || deliveryProp.getDeliveryMode().getValue() != deliveryMode)
{
- deliveryProp.setDeliveryMode(MessageDeliveryMode.get((short) deliveryMode));
+ MessageDeliveryMode mode;
+ switch (deliveryMode)
+ {
+ case DeliveryMode.PERSISTENT:
+ mode = MessageDeliveryMode.PERSISTENT;
+ break;
+ case DeliveryMode.NON_PERSISTENT:
+ mode = MessageDeliveryMode.NON_PERSISTENT;
+ break;
+ default:
+ throw new IllegalArgumentException("illegal delivery mode: " + deliveryMode);
+ }
+ deliveryProp.setDeliveryMode(mode);
message.setJMSDeliveryMode(deliveryMode);
}
if (!deliveryProp.hasPriority() || deliveryProp.getPriority().getValue() != priority)