[ 
https://issues.apache.org/jira/browse/ARTEMIS-550?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15905316#comment-15905316
 ] 

Martyn Taylor edited comment on ARTEMIS-550 at 3/10/17 4:02 PM:
----------------------------------------------------------------

The idea was to do this with aliasing, to match the 5.x naming scheme onto 
Artemis.  The Aliasing feature hasn't been fully fleshed out, but off the top 
of my head something the following:

{code:title=broker.xml|borderStyle=solid}
     <address-setting match="#">
          // Apply the alias when the address starts with Consumer
          <alias prefix="Consumer.">
              <address regexpr="\w*.\w*$"></address>
              <queue regexpr="^\w*.\w*></queue>
         <alias>
    </address-setting>
{code}

This is basically saying for any address that starts with Consumer, use the 
address and queue defined by the regexpr.

For example: A client subscribing to "Consumer.A.VirtualTopic.Orders" would map 
to an Artemis address "VirtualTopic.Orders" and queue "Consumer.A".

In Artemis FQQN this would be "VirtualTopic.Orders::Consumer.A".

The Alias feature needs more thought, I'm sure that using regexpr in this way 
will not be performant nor might it work in all use cases.  But you can see 
where I am going with this.







was (Author: martyntaylor):
The idea was to do this with aliasing, to match the 5.x naming scheme onto 
Artemis.  The Aliasing feature hasn't been fully fleshed out, but off the top 
of my head something the following:

{code:title=broker.xml|borderStyle=solid}
     // Match all addresses
     <address-setting match="#">
          // Apply the alias when the address starts with Consumer
          <alias prefix="Consumer.">
              <address regexpr="\w*.\w*$"></address>
              <queue regexpr="^\w*.\w*></queue>
         <alias>
    </address-setting>
{code}

This is basically saying for any address that starts with VirtualTopicConsumer, 
use the address and queue defined by the regexpr.

For example: A client subscribing to "Consumer.A.VirtualTopic.Orders" would map 
to an Artemis address "VirtualTopic.Orders" and queue "Consumer.A".

In Artemis FQQN this would be "VirtualTopic.Orders::Consumer.A".

The Alias feature needs more thought, I'm sure that using regexpr in this way 
will not be performant nor might it work in all use cases.  But you can see 
where I am going with this.






> Add support for virtual topic consumers
> ---------------------------------------
>
>                 Key: ARTEMIS-550
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-550
>             Project: ActiveMQ Artemis
>          Issue Type: Improvement
>          Components: Broker
>    Affects Versions: 1.3.0
>            Reporter: Benjamin Graf
>            Assignee: Martyn Taylor
>
> Artemis should support virtual topic consumers as alternative to topic 
> subscriptions as ActiveMQ itself does.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to