org.apache.activemq.broker.region.virtual
Class SelectorAwareVirtualTopicInterceptor

java.lang.Object
  extended by org.apache.activemq.broker.region.DestinationFilter
      extended by org.apache.activemq.broker.region.virtual.VirtualTopicInterceptor
          extended by org.apache.activemq.broker.region.virtual.SelectorAwareVirtualTopicInterceptor
All Implemented Interfaces:
Destination, Message.MessageDestination, Service, Task

public class SelectorAwareVirtualTopicInterceptor
extends VirtualTopicInterceptor


Field Summary
 
Fields inherited from class org.apache.activemq.broker.region.DestinationFilter
next
 
Fields inherited from interface org.apache.activemq.broker.region.Destination
DEFAULT_BLOCKED_PRODUCER_WARNING_INTERVAL, DEFAULT_DEAD_LETTER_STRATEGY
 
Constructor Summary
SelectorAwareVirtualTopicInterceptor(Destination next, String prefix, String postfix, boolean local)
           
 
Method Summary
protected  void send(ProducerBrokerExchange context, Message message, ActiveMQDestination destination)
          Respect the selectors of the subscriptions to ensure only matched messages are dispatched to the virtual queues, hence there is no build up of unmatched messages on these destinations
 
Methods inherited from class org.apache.activemq.broker.region.virtual.VirtualTopicInterceptor
getQueueConsumersWildcard, getTopic, send
 
Methods inherited from class org.apache.activemq.broker.region.DestinationFilter
acknowledge, addProducer, addSubscription, browse, canGC, clearPendingMessages, deleteSubscription, dispose, fastProducer, gc, getActiveMQDestination, getBlockedProducerWarningInterval, getConsumers, getCursorMemoryHighWaterMark, getDeadLetterStrategy, getDestinationStatistics, getInactiveTimoutBeforeGC, getMaxAuditDepth, getMaxBrowsePageSize, getMaxPageSize, getMaxProducersToAudit, getMemoryUsage, getMessageStore, getMinimumMessageSize, getName, getSlowConsumerStrategy, isActive, isAlwaysRetroactive, isDisposed, isDLQ, isDoOptimzeMessageStorage, isEnableAudit, isFull, isLazyDispatch, isPrioritizedMessages, isProducerFlowControl, isUseCache, iterate, markForGC, messageConsumed, messageDelivered, messageDiscarded, messageExpired, messageExpired, processDispatchNotification, removeProducer, removeSubscription, setAlwaysRetroactive, setBlockedProducerWarningInterval, setCursorMemoryHighWaterMark, setDoOptimzeMessageStorage, setEnableAudit, setLazyDispatch, setMaxAuditDepth, setMaxBrowsePageSize, setMaxPageSize, setMaxProducersToAudit, setMemoryUsage, setMinimumMessageSize, setProducerFlowControl, setUseCache, slowConsumer, start, stop, wakeup
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SelectorAwareVirtualTopicInterceptor

public SelectorAwareVirtualTopicInterceptor(Destination next,
                                            String prefix,
                                            String postfix,
                                            boolean local)
Method Detail

send

protected void send(ProducerBrokerExchange context,
                    Message message,
                    ActiveMQDestination destination)
             throws Exception
Respect the selectors of the subscriptions to ensure only matched messages are dispatched to the virtual queues, hence there is no build up of unmatched messages on these destinations

Overrides:
send in class DestinationFilter
Parameters:
context - broker context
message - message to send
destination - possibly wildcard destination to send the message to
Throws:
Exception - on error


Copyright © 2005–2013 The Apache Software Foundation. All rights reserved.