activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dejan Bosanac (JIRA)" <>
Subject [jira] Created: (AMQ-943) Pluggable Stomp Message Mapping
Date Wed, 27 Sep 2006 14:14:23 GMT
Pluggable Stomp Message Mapping

                 Key: AMQ-943
             Project: ActiveMQ
          Issue Type: Improvement
          Components: Transport
    Affects Versions: 4.1
            Reporter: Dejan Bosanac
             Fix For: 4.1
         Attachments: protocol-mapping.patch

I have finally found time to finish this. Here's the draft version of the Pluggable Stomp
Message Mapping implementation.

Few notes:

- New interface has been defined: ProtocolMapping (I wanted to use the same name as the message
header that we check)

- There are two implementations of this interface: DefaultProtocolMapping and ByteProtocolMapping

- I used FactoryFinder to create appropriate mapper. The finder use the following path to
find keys: META-INF/services/org/apache/activemq/transport/mapping/ (we can change this if
you want)

- The appropriate mapper is used according to the "protocol-mapping" header in the CONNECT
message. For example protocol-mapping:byte for ByteProtocolMapping handler.

- Currently I have implemented only the mapper for BytesMessage since I wasn't sure whether
you want to integrate JSON mapper for MapMessages or distribute it in a separate library.

- I have changed the test case that tests subscription for byte messages

- This solution is not compatible with current mapping for byte messages. If you want backward
compatibility, I can hard-code it in a ProtocolConverter class (as it was) since it could
not be implemented through this mechanism.


- test it more (create more unit test cases and test it more in a real environment)
- create a proper documentation so others can create their handlers.
- create a proper JavaDoc documentation for key interfaces and classes
- create JSON mapper (integrated or external)
- fix STOMP client(s)

Give it a try and let me know your impressions

Dejan Bosanac 

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:


View raw message