diff options
| author | Rajith Muditha Attapattu <rajith@apache.org> | 2013-04-01 14:59:57 +0000 |
|---|---|---|
| committer | Rajith Muditha Attapattu <rajith@apache.org> | 2013-04-01 14:59:57 +0000 |
| commit | 12f08eee5b5e0d3b77537e66180c74d7ac845ef4 (patch) | |
| tree | 3069825f784635d9c3c6c80867822aaad58f50e0 /qpid/java/client/src/main | |
| parent | 6f54aa2713204fb1f2696e627e5d4a170e9aca48 (diff) | |
| download | qpid-python-12f08eee5b5e0d3b77537e66180c74d7ac845ef4.tar.gz | |
QPID-3769 Modified the equals and hashcode methods in AMQTopic to fall
back to AMQDestination for address strings. For BURL the existing impl
will continue to work. Added AMQAnyDestination to the tests.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1463158 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/client/src/main')
| -rw-r--r-- | qpid/java/client/src/main/java/org/apache/qpid/client/AMQTopic.java | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/qpid/java/client/src/main/java/org/apache/qpid/client/AMQTopic.java b/qpid/java/client/src/main/java/org/apache/qpid/client/AMQTopic.java index 51b6c7e478..96cd209447 100644 --- a/qpid/java/client/src/main/java/org/apache/qpid/client/AMQTopic.java +++ b/qpid/java/client/src/main/java/org/apache/qpid/client/AMQTopic.java @@ -20,6 +20,7 @@ */ package org.apache.qpid.client; +import org.apache.qpid.client.AMQDestination.DestSyntax; import org.apache.qpid.exchange.ExchangeDefaults; import org.apache.qpid.framing.AMQShortString; import org.apache.qpid.messaging.Address; @@ -216,13 +217,27 @@ public class AMQTopic extends AMQDestination implements Topic public boolean equals(Object o) { - return (o instanceof AMQTopic) + if (getDestSyntax() == DestSyntax.ADDR) + { + return super.equals(o); + } + else + { + return (o instanceof AMQTopic) && ((AMQTopic)o).getExchangeName().equals(getExchangeName()) && ((AMQTopic)o).getRoutingKey().equals(getRoutingKey()); + } } public int hashCode() { - return getExchangeName().hashCode() + getRoutingKey().hashCode(); + if (getDestSyntax() == DestSyntax.ADDR) + { + return super.hashCode(); + } + else + { + return getExchangeName().hashCode() + getRoutingKey().hashCode(); + } } } |
