[ 
https://issues.apache.org/jira/browse/ATLAS-992?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Hemanth Yamijala resolved ATLAS-992.
------------------------------------
    Resolution: Invalid

This does not seem to be an Apache Atlas project's issue. Could you please file 
this against the right component?

> Added support for message queue properties an Selectors in Apache.NMS.MSMQ
> --------------------------------------------------------------------------
>
>                 Key: ATLAS-992
>                 URL: https://issues.apache.org/jira/browse/ATLAS-992
>             Project: Atlas
>          Issue Type: Improvement
>            Reporter: Stephane Ramet
>         Attachments: 2016-07-05 - Apache.NMS.MSMQ.patch
>
>
> The proposed package implements the following enhancements :
> 1. Support for communication of message properties between compatible peers
> The DefaultMessageConverter has been enhanced, so as to marshall custom 
> message properties in the MSMQ Message.Extension field, along with the 
> NMSCorrelationID which was already marshalled in this field.
> An additional flag specifies whether the MSMQ Message.Label field should be 
> populated with the NMSType (as currently - default value) or with the value 
> of a message property called "Label".
> 2. Support for selectors
> A parser for selection strings has been introduced.
> It is based on the Apache.ActiveMQ V4 implementation, ported from Java to C#.
> MessageReaders have been developped, that support various types of filtering:
> - no filtering when no selector strings are specified.
> - filtering based on the Id (NMSMessageID), CorrelationId (NMSCorrelationID) 
> or LookupId properties.
> - filtering based on any other valid selection string.
> MessageReaders have been introduced in MessageConsumers and QueueBrowsers.
> The generic filtering system, based on a selection string, has - at least - 
> two limitations:
> - it cannot be fully included in the build chains: the source code is 
> generated from SelectorParser.csc (a port of ActiveMQ's SelectorParser.jj) by 
> CSharpCC (https://github.com/deveel/csharpcc, a port of JavaCC, now 
> unmaintained). Due to limitations and/or bugs in the CSharpCC (eg. support 
> for namespace {}), the generated code must be rectified manually. A port to 
> another parser generator (eg. ANTLR) would certainly be required.
> - selection is performed by the client, by browsing through the messages in 
> the queue, via MessageQueue.GetMessageEnumerator2(), and retrieving only the 
> matching messages via MessageQueue.ReceiveByLookupId. When the queue gets 
> very long and the relevant messages are sparse, performance becomes an issue.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to