diff options
| author | Martin Ritchie <ritchiem@apache.org> | 2009-08-06 16:53:17 +0000 |
|---|---|---|
| committer | Martin Ritchie <ritchiem@apache.org> | 2009-08-06 16:53:17 +0000 |
| commit | 5c41ef4035bf7348e0e85377a5a2ef966f8f7c21 (patch) | |
| tree | 53b2a7391368d99224b67fe4f3b36101f7dce2e1 /java | |
| parent | 5e11af834dc447f5c239bdee46637354100214e5 (diff) | |
| download | qpid-python-5c41ef4035bf7348e0e85377a5a2ef966f8f7c21.tar.gz | |
QPID-2002 : Add toString functionality to Filters for displaying in Subscription arguments.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@801712 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java')
3 files changed, 39 insertions, 1 deletions
diff --git a/java/broker/src/main/java/org/apache/qpid/server/filter/JMSSelectorFilter.java b/java/broker/src/main/java/org/apache/qpid/server/filter/JMSSelectorFilter.java index 96c9353872..4adf5eb9ee 100644 --- a/java/broker/src/main/java/org/apache/qpid/server/filter/JMSSelectorFilter.java +++ b/java/broker/src/main/java/org/apache/qpid/server/filter/JMSSelectorFilter.java @@ -53,4 +53,10 @@ public class JMSSelectorFilter<E extends Exception> implements MessageFilter<E> { return _selector; } + + @Override + public String toString() + { + return "JMSSelector("+_selector+")"; + } } diff --git a/java/broker/src/main/java/org/apache/qpid/server/filter/NoConsumerFilter.java b/java/broker/src/main/java/org/apache/qpid/server/filter/NoConsumerFilter.java index f1b3b2511d..65ddf19fc4 100644 --- a/java/broker/src/main/java/org/apache/qpid/server/filter/NoConsumerFilter.java +++ b/java/broker/src/main/java/org/apache/qpid/server/filter/NoConsumerFilter.java @@ -39,4 +39,10 @@ public class NoConsumerFilter implements MessageFilter return true; } + @Override + public String toString() + { + return "NoConsumer"; + } + } diff --git a/java/broker/src/main/java/org/apache/qpid/server/filter/SimpleFilterManager.java b/java/broker/src/main/java/org/apache/qpid/server/filter/SimpleFilterManager.java index cb738e1489..b037f57787 100644 --- a/java/broker/src/main/java/org/apache/qpid/server/filter/SimpleFilterManager.java +++ b/java/broker/src/main/java/org/apache/qpid/server/filter/SimpleFilterManager.java @@ -24,7 +24,6 @@ import java.util.concurrent.ConcurrentLinkedQueue; import org.apache.log4j.Logger; import org.apache.qpid.AMQException; -import org.apache.qpid.server.queue.AMQMessage; import org.apache.qpid.server.queue.Filterable; public class SimpleFilterManager implements FilterManager<AMQException> @@ -32,6 +31,7 @@ public class SimpleFilterManager implements FilterManager<AMQException> private final Logger _logger = Logger.getLogger(SimpleFilterManager.class); private final ConcurrentLinkedQueue<MessageFilter<AMQException>> _filters; + private String _toString = ""; public SimpleFilterManager() { @@ -42,11 +42,13 @@ public class SimpleFilterManager implements FilterManager<AMQException> public void add(MessageFilter<AMQException> filter) { _filters.add(filter); + updateStringValue(); } public void remove(MessageFilter<AMQException> filter) { _filters.remove(filter); + updateStringValue(); } public boolean allAllow(Filterable<AMQException> msg) @@ -74,4 +76,28 @@ public class SimpleFilterManager implements FilterManager<AMQException> { return !_filters.isEmpty(); } + + + @Override + public String toString() + { + return _toString; + } + + private void updateStringValue() + { + StringBuilder toString = new StringBuilder(); + for (MessageFilter<AMQException> filter : _filters) + { + toString.append(filter.toString()); + toString.append(","); + } + + if (_filters.size() > 0) + { + //Remove the last ',' + toString.deleteCharAt(toString.length()-1); + } + _toString = toString.toString(); + } } |
