yep, but what about provider string... why does that not work ?


Timothy Bish wrote:
> 
> On Fri, 2008-12-05 at 05:03 -0800, Sodan wrote:
>> So I get a message and create a producer based on the destination 
>>   const cms::Destination *cmsdst = map->getCMSReplyTo();
>>   session->createProducer(cmsdst);
>> which works fine.
>> 
>> The thing is that I dont need to reply instantly back, when I get a
>> message,
>> instead I will send back messages after 1 minute or 1 hour.
>> So is the above Destination valid forever or ?
>> 
>> So the 2 questions are:
>> 1) the above 'const cms::Destination' objects, who owns that and for how
>> long,
>> or can/should I make a copy of it or ?
>> 2) tried to do
>>   string providerstring = cmsdst->toProviderString();
>>   t = session->createQUEUE(providerstring);
>>   session->createProducer(t);
>> but this does not work... no messages seems to hit the other end
>> 
>> The providerstring returned is:  "ID:verisign-45349-1228314908106-0:32:1"
>> 
>> So I get a message... and need to reply later, sometimes much later...
>> What is the best approach ?
>> 
> 
> cms::Destination provides a clone method that will create a valid copy
> of the Destination that you can keep around for a later response.  Any
> pointers that are returned from CMS interfaces as const are considered
> to be the property of the CMS classes and should not be deleted or
> assumed to exist for any longer that the current scope you are in, e.g.
> Message's received in onMessage callbacks are only guaranteed to exist
> during the lifetime of that onMessage call and no longer so the
> cms::Destination pointer returned from getCMSReplyTo is subject to the
> same lifetime.
> 
> Regards
> Tim.
> 
> 
> 
> -- 
> Tim Bish
> http://fusesource.com
> http://timbish.blogspot.com/
> 
> 
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Questions-about-getCMSReplyTo-tp20853339p20854578.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to