diff options
Diffstat (limited to 'java/broker/src/main/java/org/apache/qpid/server/exchange/DestWildExchange.java')
-rw-r--r-- | java/broker/src/main/java/org/apache/qpid/server/exchange/DestWildExchange.java | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/java/broker/src/main/java/org/apache/qpid/server/exchange/DestWildExchange.java b/java/broker/src/main/java/org/apache/qpid/server/exchange/DestWildExchange.java index b55dbcc792..c6f4dcf143 100644 --- a/java/broker/src/main/java/org/apache/qpid/server/exchange/DestWildExchange.java +++ b/java/broker/src/main/java/org/apache/qpid/server/exchange/DestWildExchange.java @@ -30,6 +30,7 @@ import org.apache.qpid.server.management.MBeanConstructor; import org.apache.qpid.server.management.MBeanDescription; import org.apache.qpid.server.queue.AMQMessage; import org.apache.qpid.server.queue.AMQQueue; +import org.apache.qpid.server.virtualhost.VirtualHost; import javax.management.JMException; import javax.management.MBeanException; @@ -48,6 +49,38 @@ import java.util.concurrent.CopyOnWriteArrayList; public class DestWildExchange extends AbstractExchange { + + public static final ExchangeType<DestWildExchange> TYPE = new ExchangeType<DestWildExchange>() + { + + public AMQShortString getName() + { + return ExchangeDefaults.TOPIC_EXCHANGE_CLASS; + } + + public Class<DestWildExchange> getExchangeClass() + { + return DestWildExchange.class; + } + + public DestWildExchange newInstance(VirtualHost host, + AMQShortString name, + boolean durable, + int ticket, + boolean autoDelete) throws AMQException + { + DestWildExchange exch = new DestWildExchange(); + exch.initialise(host, name, durable, ticket, autoDelete); + return exch; + } + + public AMQShortString getDefaultExchangeName() + { + return ExchangeDefaults.TOPIC_EXCHANGE_NAME; + } + }; + + private static final Logger _logger = Logger.getLogger(DestWildExchange.class); private ConcurrentHashMap<AMQShortString, List<AMQQueue>> _routingKey2queues = |