activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From spam trap <nospam.1.friedbad...@spamgourmet.com>
Subject Re: Modifying consumed message (AcvtiveMQ-CPP)
Date Fri, 31 Aug 2012 09:08:00 GMT
On Thu, 30 Aug 2012 15:40:18 -0400, Timothy Bish
<tabish121@gmail.com> wrote:

>On Thu, 2012-08-30 at 12:44 +0100, spam trap wrote: 
>> On Wed, 29 Aug 2012 10:08:36 -0400, Timothy Bish
>> <tabish121@gmail.com> wrote:
>> 
>> >On Wed, 2012-08-29 at 15:04 +0100, spam trap wrote: 
>> >> On Wed, 29 Aug 2012 08:46:18 -0400, Timothy Bish
>> >> <tabish121@gmail.com> wrote:
>> >> 
>> >> >On Wed, 2012-08-29 at 13:35 +0100, spam trap wrote: 
>> >> >> I need to modify a consumed message (add new properties & change
>> >> >> payload) and then send it.  I know I can't do this directly as
a
>> >> >> consumed message is read-only.  However I also find that a cloned
copy
>> >> >> is also read-only.
>> >> >> 
>> >> >> How can I achieve this?
>> >> >> 
>> >> >
>> >> >Sounds like a bug, you should open a Jira issue and attach a test case.
>> >> >
>> >> >You can reset the read-only flags manually by casting down to the
>> >> >activemq::commands::Message type and calling the methods
>> >> >setReadOnlyProperties and setReadOnlyBody.
>> >> 
>> >> I've tried this but it hasn't made any difference.  I know there could
>> >> be something wrong with my code but it works if the Message object is
>> >> newly created by not if it is cloned from a consumed message (received
>> >> via an async consumer).
>> >> 
>> >
>> >Best thing to do then is to create a new Jira issue and attach a unit
>> >test. 
>> 
>> OK.  We'll do this.  For now we'll also need a workaround.  I can
>> create a new message and copy over the body easily.  I am not sure how
>> to determine the type of the properties so that these can be copied.
>> 
>> Any ideas, thanks?
>> 
>
>This is fixed on trunk. also on trunk you can now query for property
>types in the Message objects.  Not sure there is a workaround on the
>v3.4.x code.  You might be able to cast down to the
>activemq::commands::Message type and dig into the PrimitiveMap where the
>properties are actually stored.  From my testing though calling
>setReadOnlyProperties(false) works just fine.

Thanks.

Can you tell me when the changes will go into a official release? 


Mime
View raw message