You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by He...@systema.com on 2023/09/07 10:00:28 UTC
Antwort: [Ext] Re: virtualDestinationInterceptor in Artemis
Hi Domenico,
thank you so much for pointing to the right thing.
A collegue had found that already and I did not believe him.
Can we expect wild-card expansion, i.e
. a divert address
sports.events.>
would write into a queue
SportQ.sports.events.football.matches
for a message on topic
sports.events.football.matches
This is what classic does....
Best Regards
Herbert
Von: "Domenico Francesco Bruscino" <br...@gmail.com>
An: users@activemq.apache.org
Datum: 07.09.2023 09:21
Betreff: [Ext] Re: virtualDestinationInterceptor in Artemis
Hi Herbert,
you could use ActiveMQ Artemis exclusive diverts[1], i.e.
<divert name="sports-events-divert">
<address>sports.events</address>
<forwarding-address>SportQ</forwarding-address>
<exclusive>true/exclusive>
</divert>
[1]
https://activemq.apache.org/components/artemis/documentation/latest/diverts.html
Regards,
Domenico
On Wed, 6 Sept 2023 at 18:48, <He...@systema.com> wrote:
> Hello Group,
>
> with ActiveMQ classic wa are using virtualDestinationInterceptor to
> redirect Event messages into a queue
> to consume them as kind of Unique Processing by distributed
applications.
> For this purpose the aktivemq.xml contains within the broker bean
>
> <destinationInterceptors>
> <virtualDestinationInterceptor>
> <virtualDestinations>
> <virtualTopic name="sports.events.>" prefix="SportQ."
> selectorAware="false"/>
> </virtualDestinations>
> </virtualDestinationInterceptor>
> </destinationInterceptors>
>
> Is there a similar technique with Artemis?
> I did not find something like.
>
> Regards
>
> Herbert
>
> ------------------------------
>
> *Herbert Helmstreit*
> Senior Software Engineer
>
> Phone: +49 941 / 7 83 92 36
> Herbert.Helmstreit@systema.com
>
> www.systema.com
>
> [image: LinkedIn] <https://www.linkedin.com/company/systema-gmbh/
>[image:
> Facebook] <https://de-de.facebook.com/SYSTEMA.automation/>[image: XING]
> <https://www.xing.com/pages/systemagmbh>
>
> SYSTEMA
> Systementwicklung Dipl.-Inf. Manfred Austen GmbH
>
> Manfred-von-Ardenne-Ring 6 | 01099 Dresden
> HRB 11256 Amtsgericht Dresden | USt.-ID DE 159 607 786
> Geschäftsführer: Manfred Austen, CEO und Dr. Ulf Martin, COO
>
>
Re: [Ext] Re: Re: virtualDestinationInterceptor in Artemis
Posted by Domenico Francesco Bruscino <br...@gmail.com>.
Hi Herbert,
I think that makes sense and maybe the official transformer could support
also the other virtualDestinationInterceptor options.
Regards,
Domenico
Il ven 8 set 2023, 10:58 <He...@systema.com> ha scritto:
> Hi Domenico,
>
> thank you for the helpful reply. I never extended the Broker, but it seems
> as if time finally has come now.
> After googling around I noticed I'm not alone. Other people seem to hit
> this issue, too when migrating to Artemis.
> Don't you think it would be a good idea to officially deploy an extension
> with this transformer?
>
> Regards
>
> Herbert
>
> ------------------------------
>
> *Herbert Helmstreit*
> Senior Software Engineer
>
> Phone: +49 941 / 7 83 92 36
> Herbert.Helmstreit@systema.com
>
> www.systema.com
>
> [image: LinkedIn] <https://www.linkedin.com/company/systema-gmbh/>[image:
> Facebook] <https://de-de.facebook.com/SYSTEMA.automation/>[image: XING]
> <https://www.xing.com/pages/systemagmbh>
>
> SYSTEMA
> Systementwicklung Dipl.-Inf. Manfred Austen GmbH
>
> Manfred-von-Ardenne-Ring 6 | 01099 Dresden
> HRB 11256 Amtsgericht Dresden | USt.-ID DE 159 607 786
> Geschäftsführer: Manfred Austen, CEO und Dr. Ulf Martin, COO
>
>
>
>
> Von: "Domenico Francesco Bruscino" <br...@gmail.com>
> An: users@activemq.apache.org
> Datum: 08.09.2023 09:21
> Betreff: [Ext] Re: Re: virtualDestinationInterceptor in Artemis
> ------------------------------
>
>
>
> Hi Herbert,
>
> to implement the wild-card expansion you could use a custom transformer
> [1], i.e.
>
> public class PrefixAddressTransformer implements Transformer {
> @Override
> public Message transform(Message message) {
> SimpleString originalAddress =
> (SimpleString)message.getBrokerProperty(Message.HDR_ORIGINAL_ADDRESS);
> message.setAddress(message.getAddress() + "." +
> originalAddress.toString());
> return message;
> }
> }
>
> <diverts>
> <divert name="sports-events-divert">
> <address>sports.events.#</address>
> <forwarding-address>SportQ</forwarding-address>
> <exclusive>true</exclusive>
>
>
> <transformer-class-name>org.apache.activemq.artemis.core.server.transformer.PrefixAddressTransformer</transformer-class-name>
> </divert>
> </diverts>
>
> [1]
>
> https://activemq.apache.org/components/artemis/documentation/latest/transformers.html
>
> Regards,
> Domenico
>
>
> On Thu, 7 Sept 2023 at 12:00, <He...@systema.com> wrote:
>
> > Hi Domenico,
> >
> > thank you so much for pointing to the right thing.
> > A collegue had found that already and I did not believe him.
> > Can we expect wild-card expansion, i.e
> >
> > . a divert address
> > sports.events.>
> > would write into a queue
> > SportQ.sports.events.football.matches
> > for a message on topic
> > sports.events.football.matches
> > This is what classic does....
> >
> > Best Regards
> >
> > Herbert
> > ------------------------------
> >
> > *Herbert Helmstreit*
> > Senior Software Engineer
> >
> > Phone: +49 941 / 7 83 92 36
> > Herbert.Helmstreit@systema.com
> >
> > www.systema.com
> >
> > [image: LinkedIn] <https://www.linkedin.com/company/systema-gmbh/
> >[image:
> > Facebook] <https://de-de.facebook.com/SYSTEMA.automation/>[image: XING]
> > <https://www.xing.com/pages/systemagmbh>
> >
> > SYSTEMA
> > Systementwicklung Dipl.-Inf. Manfred Austen GmbH
> >
> > Manfred-von-Ardenne-Ring 6 | 01099 Dresden
> > HRB 11256 Amtsgericht Dresden | USt.-ID DE 159 607 786
> > Geschäftsführer: Manfred Austen, CEO und Dr. Ulf Martin, COO
> >
> >
> >
> >
> > Von: "Domenico Francesco Bruscino" <br...@gmail.com>
> > An: users@activemq.apache.org
> > Datum: 07.09.2023 09:21
> > Betreff: [Ext] Re: virtualDestinationInterceptor in Artemis
> > ------------------------------
> >
> >
> >
> > Hi Herbert,
> >
> > you could use ActiveMQ Artemis exclusive diverts[1], i.e.
> >
> > <divert name="sports-events-divert">
> > <address>sports.events</address>
> > <forwarding-address>SportQ</forwarding-address>
> > <exclusive>true/exclusive>
> > </divert>
> >
> > [1]
> >
> >
> https://activemq.apache.org/components/artemis/documentation/latest/diverts.html
> >
> > Regards,
> > Domenico
> >
> >
> >
> > On Wed, 6 Sept 2023 at 18:48, <He...@systema.com> wrote:
> >
> > > Hello Group,
> > >
> > > with ActiveMQ classic wa are using virtualDestinationInterceptor to
> > > redirect Event messages into a queue
> > > to consume them as kind of Unique Processing by distributed
> applications.
> > > For this purpose the aktivemq.xml contains within the broker bean
> > >
> > > <destinationInterceptors>
> > > <virtualDestinationInterceptor>
> > > <virtualDestinations>
> > > <virtualTopic name="sports.events.>" prefix="SportQ."
> > > selectorAware="false"/>
> > > </virtualDestinations>
> > > </virtualDestinationInterceptor>
> > > </destinationInterceptors>
> > >
> > > Is there a similar technique with Artemis?
> > > I did not find something like.
> > >
> > > Regards
> > >
> > > Herbert
> > >
> > > ------------------------------
> > >
> > > *Herbert Helmstreit*
> > > Senior Software Engineer
> > >
> > > Phone: +49 941 / 7 83 92 36
> > > Herbert.Helmstreit@systema.com
> > >
> > > www.systema.com
> > >
> > > [image: LinkedIn] <https://www.linkedin.com/company/systema-gmbh/
> > >[image:
> > > Facebook] <https://de-de.facebook.com/SYSTEMA.automation/>[image:
> XING]
> > > <https://www.xing.com/pages/systemagmbh>
> > >
> > > SYSTEMA
> > > Systementwicklung Dipl.-Inf. Manfred Austen GmbH
> > >
> > > Manfred-von-Ardenne-Ring 6 | 01099 Dresden
> > > HRB 11256 Amtsgericht Dresden | USt.-ID DE 159 607 786
> > > Geschäftsführer: Manfred Austen, CEO und Dr. Ulf Martin, COO
> > >
> > >
> >
> >
> >
> >
>
>
>
>
Antwort: [Ext] Re: Re: virtualDestinationInterceptor in Artemis
Posted by He...@systema.com.
Hi Domenico,
thank you for the helpful reply. I never extended the Broker, but it seems
as if time finally has come now.
After googling around I noticed I'm not alone. Other people seem to hit
this issue, too when migrating to Artemis.
Don't you think it would be a good idea to officially deploy an extension
with this transformer?
Regards
Herbert
Von: "Domenico Francesco Bruscino" <br...@gmail.com>
An: users@activemq.apache.org
Datum: 08.09.2023 09:21
Betreff: [Ext] Re: Re: virtualDestinationInterceptor in Artemis
Hi Herbert,
to implement the wild-card expansion you could use a custom transformer
[1], i.e.
public class PrefixAddressTransformer implements Transformer {
@Override
public Message transform(Message message) {
SimpleString originalAddress =
(SimpleString)message.getBrokerProperty(Message.HDR_ORIGINAL_ADDRESS);
message.setAddress(message.getAddress() + "." +
originalAddress.toString());
return message;
}
}
<diverts>
<divert name="sports-events-divert">
<address>sports.events.#</address>
<forwarding-address>SportQ</forwarding-address>
<exclusive>true</exclusive>
<transformer-class-name>org.apache.activemq.artemis.core.server.transformer.PrefixAddressTransformer</transformer-class-name>
</divert>
</diverts>
[1]
https://activemq.apache.org/components/artemis/documentation/latest/transformers.html
Regards,
Domenico
On Thu, 7 Sept 2023 at 12:00, <He...@systema.com> wrote:
> Hi Domenico,
>
> thank you so much for pointing to the right thing.
> A collegue had found that already and I did not believe him.
> Can we expect wild-card expansion, i.e
>
> . a divert address
> sports.events.>
> would write into a queue
> SportQ.sports.events.football.matches
> for a message on topic
> sports.events.football.matches
> This is what classic does....
>
> Best Regards
>
> Herbert
> ------------------------------
>
> *Herbert Helmstreit*
> Senior Software Engineer
>
> Phone: +49 941 / 7 83 92 36
> Herbert.Helmstreit@systema.com
>
> www.systema.com
>
> [image: LinkedIn] <https://www.linkedin.com/company/systema-gmbh/
>[image:
> Facebook] <https://de-de.facebook.com/SYSTEMA.automation/>[image: XING]
> <https://www.xing.com/pages/systemagmbh>
>
> SYSTEMA
> Systementwicklung Dipl.-Inf. Manfred Austen GmbH
>
> Manfred-von-Ardenne-Ring 6 | 01099 Dresden
> HRB 11256 Amtsgericht Dresden | USt.-ID DE 159 607 786
> Geschäftsführer: Manfred Austen, CEO und Dr. Ulf Martin, COO
>
>
>
>
> Von: "Domenico Francesco Bruscino" <br...@gmail.com>
> An: users@activemq.apache.org
> Datum: 07.09.2023 09:21
> Betreff: [Ext] Re: virtualDestinationInterceptor in Artemis
> ------------------------------
>
>
>
> Hi Herbert,
>
> you could use ActiveMQ Artemis exclusive diverts[1], i.e.
>
> <divert name="sports-events-divert">
> <address>sports.events</address>
> <forwarding-address>SportQ</forwarding-address>
> <exclusive>true/exclusive>
> </divert>
>
> [1]
>
>
https://activemq.apache.org/components/artemis/documentation/latest/diverts.html
>
> Regards,
> Domenico
>
>
>
> On Wed, 6 Sept 2023 at 18:48, <He...@systema.com> wrote:
>
> > Hello Group,
> >
> > with ActiveMQ classic wa are using virtualDestinationInterceptor to
> > redirect Event messages into a queue
> > to consume them as kind of Unique Processing by distributed
applications.
> > For this purpose the aktivemq.xml contains within the broker bean
> >
> > <destinationInterceptors>
> > <virtualDestinationInterceptor>
> > <virtualDestinations>
> > <virtualTopic name="sports.events.>" prefix="SportQ."
> > selectorAware="false"/>
> > </virtualDestinations>
> > </virtualDestinationInterceptor>
> > </destinationInterceptors>
> >
> > Is there a similar technique with Artemis?
> > I did not find something like.
> >
> > Regards
> >
> > Herbert
> >
> > ------------------------------
> >
> > *Herbert Helmstreit*
> > Senior Software Engineer
> >
> > Phone: +49 941 / 7 83 92 36
> > Herbert.Helmstreit@systema.com
> >
> > www.systema.com
> >
> > [image: LinkedIn] <https://www.linkedin.com/company/systema-gmbh/
> >[image:
> > Facebook] <https://de-de.facebook.com/SYSTEMA.automation/>[image:
XING]
> > <https://www.xing.com/pages/systemagmbh>
> >
> > SYSTEMA
> > Systementwicklung Dipl.-Inf. Manfred Austen GmbH
> >
> > Manfred-von-Ardenne-Ring 6 | 01099 Dresden
> > HRB 11256 Amtsgericht Dresden | USt.-ID DE 159 607 786
> > Geschäftsführer: Manfred Austen, CEO und Dr. Ulf Martin, COO
> >
> >
>
>
>
>
Re: [Ext] Re: virtualDestinationInterceptor in Artemis
Posted by Domenico Francesco Bruscino <br...@gmail.com>.
Hi Herbert,
to implement the wild-card expansion you could use a custom transformer
[1], i.e.
public class PrefixAddressTransformer implements Transformer {
@Override
public Message transform(Message message) {
SimpleString originalAddress =
(SimpleString)message.getBrokerProperty(Message.HDR_ORIGINAL_ADDRESS);
message.setAddress(message.getAddress() + "." +
originalAddress.toString());
return message;
}
}
<diverts>
<divert name="sports-events-divert">
<address>sports.events.#</address>
<forwarding-address>SportQ</forwarding-address>
<exclusive>true</exclusive>
<transformer-class-name>org.apache.activemq.artemis.core.server.transformer.PrefixAddressTransformer</transformer-class-name>
</divert>
</diverts>
[1]
https://activemq.apache.org/components/artemis/documentation/latest/transformers.html
Regards,
Domenico
On Thu, 7 Sept 2023 at 12:00, <He...@systema.com> wrote:
> Hi Domenico,
>
> thank you so much for pointing to the right thing.
> A collegue had found that already and I did not believe him.
> Can we expect wild-card expansion, i.e
>
> . a divert address
> sports.events.>
> would write into a queue
> SportQ.sports.events.football.matches
> for a message on topic
> sports.events.football.matches
> This is what classic does....
>
> Best Regards
>
> Herbert
> ------------------------------
>
> *Herbert Helmstreit*
> Senior Software Engineer
>
> Phone: +49 941 / 7 83 92 36
> Herbert.Helmstreit@systema.com
>
> www.systema.com
>
> [image: LinkedIn] <https://www.linkedin.com/company/systema-gmbh/>[image:
> Facebook] <https://de-de.facebook.com/SYSTEMA.automation/>[image: XING]
> <https://www.xing.com/pages/systemagmbh>
>
> SYSTEMA
> Systementwicklung Dipl.-Inf. Manfred Austen GmbH
>
> Manfred-von-Ardenne-Ring 6 | 01099 Dresden
> HRB 11256 Amtsgericht Dresden | USt.-ID DE 159 607 786
> Geschäftsführer: Manfred Austen, CEO und Dr. Ulf Martin, COO
>
>
>
>
> Von: "Domenico Francesco Bruscino" <br...@gmail.com>
> An: users@activemq.apache.org
> Datum: 07.09.2023 09:21
> Betreff: [Ext] Re: virtualDestinationInterceptor in Artemis
> ------------------------------
>
>
>
> Hi Herbert,
>
> you could use ActiveMQ Artemis exclusive diverts[1], i.e.
>
> <divert name="sports-events-divert">
> <address>sports.events</address>
> <forwarding-address>SportQ</forwarding-address>
> <exclusive>true/exclusive>
> </divert>
>
> [1]
>
> https://activemq.apache.org/components/artemis/documentation/latest/diverts.html
>
> Regards,
> Domenico
>
>
>
> On Wed, 6 Sept 2023 at 18:48, <He...@systema.com> wrote:
>
> > Hello Group,
> >
> > with ActiveMQ classic wa are using virtualDestinationInterceptor to
> > redirect Event messages into a queue
> > to consume them as kind of Unique Processing by distributed applications.
> > For this purpose the aktivemq.xml contains within the broker bean
> >
> > <destinationInterceptors>
> > <virtualDestinationInterceptor>
> > <virtualDestinations>
> > <virtualTopic name="sports.events.>" prefix="SportQ."
> > selectorAware="false"/>
> > </virtualDestinations>
> > </virtualDestinationInterceptor>
> > </destinationInterceptors>
> >
> > Is there a similar technique with Artemis?
> > I did not find something like.
> >
> > Regards
> >
> > Herbert
> >
> > ------------------------------
> >
> > *Herbert Helmstreit*
> > Senior Software Engineer
> >
> > Phone: +49 941 / 7 83 92 36
> > Herbert.Helmstreit@systema.com
> >
> > www.systema.com
> >
> > [image: LinkedIn] <https://www.linkedin.com/company/systema-gmbh/
> >[image:
> > Facebook] <https://de-de.facebook.com/SYSTEMA.automation/>[image: XING]
> > <https://www.xing.com/pages/systemagmbh>
> >
> > SYSTEMA
> > Systementwicklung Dipl.-Inf. Manfred Austen GmbH
> >
> > Manfred-von-Ardenne-Ring 6 | 01099 Dresden
> > HRB 11256 Amtsgericht Dresden | USt.-ID DE 159 607 786
> > Geschäftsführer: Manfred Austen, CEO und Dr. Ulf Martin, COO
> >
> >
>
>
>
>