tabish121 commented on a change in pull request #2695: ARTEMIS-2372 Filtering 
on Message Annotations
URL: https://github.com/apache/activemq-artemis/pull/2695#discussion_r290927630
 
 

 ##########
 File path: 
artemis-protocols/artemis-amqp-protocol/src/main/java/org/apache/activemq/artemis/protocol/amqp/broker/AMQPMessage.java
 ##########
 @@ -1263,7 +1263,10 @@ public Long getLongProperty(String key) throws 
ActiveMQPropertyConversionExcepti
 
    @Override
    public Object getObjectProperty(String key) {
-      if (key.equals(MessageUtil.TYPE_HEADER_NAME.toString())) {
+
+      if 
(key.startsWith(AMQPMessageSupport.JMS_AMQP_MESSAGE_ANNOTATION_PREFIX)) {
 
 Review comment:
   This doesn't seem right at all, as the specification reserves all 
Annotations Symbol and UnsignedLong keys for its own use but the broker seems 
to be populating annotations that violate that.  Any client or other 
intermediary would be within its rights (technically required) to close the 
connection upon receiving a message with these broker specific message 
annotations as per the spec: 
   
   ←
   3.2.10 Annotations -  The annotations type is a map where the keys are 
restricted to be of type symbol or of type ulong. All ulong keys, and all 
symbolic keys except those beginning with "x-" are reserved. Keys beginning 
with "x-opt-" MUST be ignored if not understood. On receiving an annotation key 
which is not understood, and which does not begin with "x-opt", the receiving 
AMQP container MUST detach the link with a not-implemented error. 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to