From 23a5a586e6a1d958742d6cadde8ee47c4e672fcb Mon Sep 17 00:00:00 2001 From: Robert Gemmell Date: Tue, 27 Sep 2011 11:02:47 +0000 Subject: QPID-3507: move the MessageListener check in front of the _receiving CAS Applied patch from Oleksandr Rudyy git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1176326 13f79535-47bb-0310-9956-ffa450edef68 --- .../main/java/org/apache/qpid/client/BasicMessageConsumer.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'java/client/src') diff --git a/java/client/src/main/java/org/apache/qpid/client/BasicMessageConsumer.java b/java/client/src/main/java/org/apache/qpid/client/BasicMessageConsumer.java index 754055ad98..78741d6290 100644 --- a/java/client/src/main/java/org/apache/qpid/client/BasicMessageConsumer.java +++ b/java/client/src/main/java/org/apache/qpid/client/BasicMessageConsumer.java @@ -323,14 +323,14 @@ public abstract class BasicMessageConsumer extends Closeable implements Messa } } - if (!_receiving.compareAndSet(false, true)) + if (isMessageListenerSet()) { - throw new javax.jms.IllegalStateException("Another thread is already receiving."); + throw new javax.jms.IllegalStateException("A listener has already been set."); } - if (isMessageListenerSet()) + if (!_receiving.compareAndSet(false, true)) { - throw new javax.jms.IllegalStateException("A listener has already been set."); + throw new javax.jms.IllegalStateException("Another thread is already receiving."); } _receivingThread = Thread.currentThread(); -- cgit v1.2.1