default void referenceOriginalMessage(final Message original, String originalQueue) { String queueOnMessage = original.getAnnotationString(Message.HDR_ORIGINAL_QUEUE); if (queueOnMessage != null) { setAnnotation(Message.HDR_ORIGINAL_QUEUE, queueOnMessage); } else if (originalQueue != null) { setAnnotation(Message.HDR_ORIGINAL_QUEUE, originalQueue); } Object originalID = original.getAnnotation(Message.HDR_ORIG_MESSAGE_ID); if (originalID != null) { setAnnotation(Message.HDR_ORIGINAL_ADDRESS, original.getAnnotationString(Message.HDR_ORIGINAL_ADDRESS)); setAnnotation(Message.HDR_ORIG_MESSAGE_ID, originalID); } else { setAnnotation(Message.HDR_ORIGINAL_ADDRESS, original.getAddress()); setAnnotation(Message.HDR_ORIG_MESSAGE_ID, original.getMessageID()); } // reset expiry setExpiration(0); }
@Override public void actMessage(Transaction tx, MessageReference ref) throws Exception { String originalMessageAddress = ref.getMessage().getAnnotationString(Message.HDR_ORIGINAL_ADDRESS); String originalMessageQueue = ref.getMessage().getAnnotationString(Message.HDR_ORIGINAL_QUEUE); if (originalMessageAddress != null) { incDelivering(ref); Long targetQueue = null; if (originalMessageQueue != null && !originalMessageQueue.equals(originalMessageAddress)) { targetQueue = queues.get(originalMessageQueue); if (targetQueue == null) { Binding binding = postOffice.getBinding(SimpleString.toSimpleString(originalMessageQueue)); if (binding != null && binding instanceof LocalQueueBinding) { targetQueue = ((LocalQueueBinding) binding).getID(); queues.put(originalMessageQueue, targetQueue); } } } if (targetQueue != null) { move(SimpleString.toSimpleString(originalMessageAddress), tx, ref, false, false, targetQueue.longValue()); } else { move(SimpleString.toSimpleString(originalMessageAddress), tx, ref, false, false); } refRemoved(ref); } } });
default void referenceOriginalMessage(final Message original, String originalQueue) { String queueOnMessage = original.getAnnotationString(Message.HDR_ORIGINAL_QUEUE); if (queueOnMessage != null) { setAnnotation(Message.HDR_ORIGINAL_QUEUE, queueOnMessage); } else if (originalQueue != null) { setAnnotation(Message.HDR_ORIGINAL_QUEUE, originalQueue); } Object originalID = original.getAnnotation(Message.HDR_ORIG_MESSAGE_ID); if (originalID != null) { setAnnotation(Message.HDR_ORIGINAL_ADDRESS, original.getAnnotationString(Message.HDR_ORIGINAL_ADDRESS)); setAnnotation(Message.HDR_ORIG_MESSAGE_ID, originalID); } else { setAnnotation(Message.HDR_ORIGINAL_ADDRESS, original.getAddress()); setAnnotation(Message.HDR_ORIG_MESSAGE_ID, original.getMessageID()); } // reset expiry setExpiration(0); }
default void referenceOriginalMessage(final Message original, String originalQueue) { String queueOnMessage = original.getAnnotationString(Message.HDR_ORIGINAL_QUEUE); if (queueOnMessage != null) { setAnnotation(Message.HDR_ORIGINAL_QUEUE, queueOnMessage); } else if (originalQueue != null) { setAnnotation(Message.HDR_ORIGINAL_QUEUE, originalQueue); } Object originalID = original.getAnnotation(Message.HDR_ORIG_MESSAGE_ID); if (originalID != null) { setAnnotation(Message.HDR_ORIGINAL_ADDRESS, original.getAnnotationString(Message.HDR_ORIGINAL_ADDRESS)); setAnnotation(Message.HDR_ORIG_MESSAGE_ID, originalID); } else { setAnnotation(Message.HDR_ORIGINAL_ADDRESS, original.getAddress()); setAnnotation(Message.HDR_ORIG_MESSAGE_ID, original.getMessageID()); } // reset expiry setExpiration(0); }
default void referenceOriginalMessage(final Message original, String originalQueue) { String queueOnMessage = original.getAnnotationString(Message.HDR_ORIGINAL_QUEUE); if (queueOnMessage != null) { setAnnotation(Message.HDR_ORIGINAL_QUEUE, queueOnMessage); } else if (originalQueue != null) { setAnnotation(Message.HDR_ORIGINAL_QUEUE, originalQueue); } Object originalID = original.getAnnotation(Message.HDR_ORIG_MESSAGE_ID); if (originalID != null) { setAnnotation(Message.HDR_ORIGINAL_ADDRESS, original.getAnnotationString(Message.HDR_ORIGINAL_ADDRESS)); setAnnotation(Message.HDR_ORIG_MESSAGE_ID, originalID); } else { setAnnotation(Message.HDR_ORIGINAL_ADDRESS, original.getAddress()); setAnnotation(Message.HDR_ORIG_MESSAGE_ID, original.getMessageID()); } // reset expiry setExpiration(0); }
default void referenceOriginalMessage(final Message original, String originalQueue) { String queueOnMessage = original.getAnnotationString(Message.HDR_ORIGINAL_QUEUE); if (queueOnMessage != null) { setAnnotation(Message.HDR_ORIGINAL_QUEUE, queueOnMessage); } else if (originalQueue != null) { setAnnotation(Message.HDR_ORIGINAL_QUEUE, originalQueue); } Object originalID = original.getAnnotation(Message.HDR_ORIG_MESSAGE_ID); if (originalID != null) { setAnnotation(Message.HDR_ORIGINAL_ADDRESS, original.getAnnotationString(Message.HDR_ORIGINAL_ADDRESS)); setAnnotation(Message.HDR_ORIG_MESSAGE_ID, originalID); } else { setAnnotation(Message.HDR_ORIGINAL_ADDRESS, original.getAddress()); setAnnotation(Message.HDR_ORIG_MESSAGE_ID, original.getMessageID()); } // reset expiry setExpiration(0); }
default void referenceOriginalMessage(final Message original, String originalQueue) { String queueOnMessage = original.getAnnotationString(Message.HDR_ORIGINAL_QUEUE); if (queueOnMessage != null) { setAnnotation(Message.HDR_ORIGINAL_QUEUE, queueOnMessage); } else if (originalQueue != null) { setAnnotation(Message.HDR_ORIGINAL_QUEUE, originalQueue); } Object originalID = original.getAnnotation(Message.HDR_ORIG_MESSAGE_ID); if (originalID != null) { setAnnotation(Message.HDR_ORIGINAL_ADDRESS, original.getAnnotationString(Message.HDR_ORIGINAL_ADDRESS)); setAnnotation(Message.HDR_ORIG_MESSAGE_ID, originalID); } else { setAnnotation(Message.HDR_ORIGINAL_ADDRESS, original.getAddress()); setAnnotation(Message.HDR_ORIG_MESSAGE_ID, original.getMessageID()); } // reset expiry setExpiration(0); }
default void referenceOriginalMessage(final Message original, String originalQueue) { String queueOnMessage = original.getAnnotationString(Message.HDR_ORIGINAL_QUEUE); if (queueOnMessage != null) { setAnnotation(Message.HDR_ORIGINAL_QUEUE, queueOnMessage); } else if (originalQueue != null) { setAnnotation(Message.HDR_ORIGINAL_QUEUE, originalQueue); } Object originalID = original.getAnnotation(Message.HDR_ORIG_MESSAGE_ID); if (originalID != null) { setAnnotation(Message.HDR_ORIGINAL_ADDRESS, original.getAnnotationString(Message.HDR_ORIGINAL_ADDRESS)); setAnnotation(Message.HDR_ORIG_MESSAGE_ID, originalID); } else { setAnnotation(Message.HDR_ORIGINAL_ADDRESS, original.getAddress()); setAnnotation(Message.HDR_ORIG_MESSAGE_ID, original.getMessageID()); } // reset expiry setExpiration(0); }