summaryrefslogtreecommitdiff
path: root/qpid/java
diff options
context:
space:
mode:
authorArnaud Simon <arnaudsimon@apache.org>2007-10-02 15:33:14 +0000
committerArnaud Simon <arnaudsimon@apache.org>2007-10-02 15:33:14 +0000
commitea005b93d8bbbec46038774e86cb5ec4c9c6d72c (patch)
treed77ecec3c95e2143a6e16d676d78ad4a32bb4546 /qpid/java
parented30bf6d67d66fa046836092cd616d7ac5c69e47 (diff)
downloadqpid-python-ea005b93d8bbbec46038774e86cb5ec4c9c6d72c.tar.gz
Changed isqueueBound for handling null routing key
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@581279 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java')
-rw-r--r--qpid/java/client/src/main/java/org/apache/qpid/client/AMQSession_0_10.java24
1 files changed, 18 insertions, 6 deletions
diff --git a/qpid/java/client/src/main/java/org/apache/qpid/client/AMQSession_0_10.java b/qpid/java/client/src/main/java/org/apache/qpid/client/AMQSession_0_10.java
index 7916dd0d0e..2b29ed3817 100644
--- a/qpid/java/client/src/main/java/org/apache/qpid/client/AMQSession_0_10.java
+++ b/qpid/java/client/src/main/java/org/apache/qpid/client/AMQSession_0_10.java
@@ -297,13 +297,25 @@ public class AMQSession_0_10 extends AMQSession
public boolean isQueueBound(final AMQShortString exchangeName, final AMQShortString queueName,
final AMQShortString routingKey) throws JMSException
{
- Future<BindingQueryResult> result = getQpidSession().bindingQuery(exchangeName.toString(), queueName.toString(), routingKey.toString(), null);
+ String rk = "";
+ boolean res;
+ if (routingKey != null)
+ {
+ rk = routingKey.toString();
+ }
+ Future<BindingQueryResult> result =
+ getQpidSession().bindingQuery(exchangeName.toString(), queueName.toString(), rk, null);
BindingQueryResult bindingQueryResult = result.get();
- return ! (bindingQueryResult.getArgsNotMatched() ||
- bindingQueryResult.getExchangeNotFound() ||
- bindingQueryResult.getKeyNotMatched() ||
- bindingQueryResult.getQueueNotFound() ||
- bindingQueryResult.getQueueNotMatched());
+ if (routingKey == null)
+ {
+ res = !(bindingQueryResult.getExchangeNotFound() || bindingQueryResult.getQueueNotFound());
+ }
+ else
+ {
+ res = !(bindingQueryResult.getKeyNotMatched() || bindingQueryResult.getQueueNotFound() || bindingQueryResult
+ .getQueueNotMatched());
+ }
+ return res;
}
/**