sbuf.append(m.getJMSPriority());
headers.put(JmsHeaders.PRIORITY, jmsMessage.getJMSPriority());
private Map<String, String> extractMessageHeaders(final Message message) throws JMSException { final Map<String, String> messageHeaders = new HashMap<>(); messageHeaders.put(JmsHeaders.DELIVERY_MODE, String.valueOf(message.getJMSDeliveryMode())); messageHeaders.put(JmsHeaders.EXPIRATION, String.valueOf(message.getJMSExpiration())); messageHeaders.put(JmsHeaders.PRIORITY, String.valueOf(message.getJMSPriority())); messageHeaders.put(JmsHeaders.REDELIVERED, String.valueOf(message.getJMSRedelivered())); messageHeaders.put(JmsHeaders.TIMESTAMP, String.valueOf(message.getJMSTimestamp())); messageHeaders.put(JmsHeaders.CORRELATION_ID, message.getJMSCorrelationID()); messageHeaders.put(JmsHeaders.MESSAGE_ID, message.getJMSMessageID()); messageHeaders.put(JmsHeaders.TYPE, message.getJMSType()); String replyToDestinationName = this.retrieveDestinationName(message.getJMSReplyTo(), JmsHeaders.REPLY_TO); if (replyToDestinationName != null) { messageHeaders.put(JmsHeaders.REPLY_TO, replyToDestinationName); } String destinationName = this.retrieveDestinationName(message.getJMSDestination(), JmsHeaders.DESTINATION); if (destinationName != null) { messageHeaders.put(JmsHeaders.DESTINATION, destinationName); } return messageHeaders; }
attributes.put(ATTRIBUTE_PREFIX + JMS_PRIORITY, String.valueOf(message.getJMSPriority())); attributes.put(ATTRIBUTE_PREFIX + JMS_REDELIVERED, String.valueOf(message.getJMSRedelivered())); attributes.put(ATTRIBUTE_PREFIX + JMS_TIMESTAMP, String.valueOf(message.getJMSTimestamp()));
setJMSDeliveryMode(foreign.getJMSDeliveryMode()); setJMSExpiration(foreign.getJMSExpiration()); setJMSPriority(foreign.getJMSPriority()); setJMSType(foreign.getJMSType());
/** * Copies the standard JMS and user defined properties from the givem * message to the specified message * * @param fromMessage the message to take the properties from * @param toMessage the message to add the properties to * @throws JMSException */ public static void copyProperties(Message fromMessage, Message toMessage) throws JMSException { toMessage.setJMSMessageID(fromMessage.getJMSMessageID()); toMessage.setJMSCorrelationID(fromMessage.getJMSCorrelationID()); toMessage.setJMSReplyTo(transformDestination(fromMessage.getJMSReplyTo())); toMessage.setJMSDestination(transformDestination(fromMessage.getJMSDestination())); toMessage.setJMSDeliveryMode(fromMessage.getJMSDeliveryMode()); toMessage.setJMSRedelivered(fromMessage.getJMSRedelivered()); toMessage.setJMSType(fromMessage.getJMSType()); toMessage.setJMSExpiration(fromMessage.getJMSExpiration()); toMessage.setJMSPriority(fromMessage.getJMSPriority()); toMessage.setJMSTimestamp(fromMessage.getJMSTimestamp()); Enumeration propertyNames = fromMessage.getPropertyNames(); while (propertyNames.hasMoreElements()) { String name = propertyNames.nextElement().toString(); Object obj = fromMessage.getObjectProperty(name); toMessage.setObjectProperty(name, obj); } } }
@Test public void jmsReadOnlyPropertiesNotMapped() throws JMSException { Message<String> message = initBuilder() .setHeader(JmsHeaders.DESTINATION, new Destination() {}) .setHeader(JmsHeaders.DELIVERY_MODE, DeliveryMode.NON_PERSISTENT) .setHeader(JmsHeaders.EXPIRATION, 1000L) .setHeader(JmsHeaders.MESSAGE_ID, "abc-123") .setHeader(JmsHeaders.PRIORITY, 9) .setHeader(JmsHeaders.REDELIVERED, true) .setHeader(JmsHeaders.TIMESTAMP, System.currentTimeMillis()) .build(); javax.jms.Message jmsMessage = new StubTextMessage(); mapper.fromHeaders(message.getHeaders(), jmsMessage); assertNull(jmsMessage.getJMSDestination()); assertEquals(DeliveryMode.PERSISTENT, jmsMessage.getJMSDeliveryMode()); assertEquals(0, jmsMessage.getJMSExpiration()); assertNull(jmsMessage.getJMSMessageID()); assertEquals(javax.jms.Message.DEFAULT_PRIORITY, jmsMessage.getJMSPriority()); assertFalse(jmsMessage.getJMSRedelivered()); assertEquals(0, jmsMessage.getJMSTimestamp()); }
sbuf.append(m.getJMSPriority());
headers.put(IntegrationMessageHeaderAccessor.PRIORITY, jmsMessage.getJMSPriority());
public void onMessage(javax.jms.Message request, Session session) throws JMSException { String text = "priority=" + request.getJMSPriority(); TextMessage reply = session.createTextMessage(text); MessageProducer producer = session.createProducer(request.getJMSReplyTo()); reply.setJMSCorrelationID(request.getJMSMessageID()); producer.send(reply); } }
@Test public void verifyPrioritySettingOnChannelAdapterUsedAsJmsPriorityIfNoHeader() throws Exception { Message<?> message = MessageBuilder.withPayload("test").build(); channelAdapterChannel.send(message); Message<?> result = channelAdapterResults.receive(5000); assertNotNull(result); assertTrue(result.getPayload() instanceof javax.jms.Message); javax.jms.Message jmsMessage = (javax.jms.Message) result.getPayload(); assertEquals(3, jmsMessage.getJMSPriority()); }
@Test public void verifyPriorityHeaderUsedAsJmsPriorityWithChannelAdapter() throws Exception { Message<?> message = MessageBuilder.withPayload("test").setPriority(7).build(); channelAdapterChannel.send(message); Message<?> result = channelAdapterResults.receive(5000); assertNotNull(result); assertTrue(result.getPayload() instanceof javax.jms.Message); javax.jms.Message jmsMessage = (javax.jms.Message) result.getPayload(); assertEquals(7, jmsMessage.getJMSPriority()); }
@Override public int getJMSPriority() throws JMSException { return message.getJMSPriority(); }
assertTrue(latch1.await(10, TimeUnit.SECONDS)); assertNotNull(message.get()); assertEquals(5, message.get().getJMSPriority()); assertTrue(message.get().getJMSExpiration() <= System.currentTimeMillis() + ttl); assertTrue(message.get().toString().contains("persistent = false")); assertTrue(latch2.await(10, TimeUnit.SECONDS)); assertNotNull(message.get()); assertEquals(6, message.get().getJMSPriority()); assertTrue(message.get().getJMSExpiration() <= System.currentTimeMillis() + ttl); assertTrue(message.get().toString().contains("persistent = false"));
public class QoSEnabledJmsTemplate extends JmsTemplate { protected void doSend(MessageProducer producer, Message message) throws JMSException { producer.send(message, getDeliveryMode(), message.getJMSPriority(), getTimeToLive()); } }
/** * Get priority * @return The value * @exception JMSException Thrown if an error occurs */ public int getJMSPriority() throws JMSException { if (_log.isTraceEnabled()) { _log.trace("getJMSPriority()"); } return _message.getJMSPriority(); }
/** * Get priority * * @return The value * @throws JMSException Thrown if an error occurs */ @Override public int getJMSPriority() throws JMSException { if (ActiveMQRALogger.LOGGER.isTraceEnabled()) { ActiveMQRALogger.LOGGER.trace("getJMSPriority()"); } return message.getJMSPriority(); }
/** * Get priority * * @return The value * @throws JMSException Thrown if an error occurs */ @Override public int getJMSPriority() throws JMSException { if (ActiveMQRALogger.LOGGER.isTraceEnabled()) { ActiveMQRALogger.LOGGER.trace("getJMSPriority()"); } return message.getJMSPriority(); }
/** * Override so we can support preserving the Qos settings that have * been set on the message. */ protected void doSend(MessageProducer producer, Message message) throws JMSException { if (isPreserveMessageQos()) { producer.send(message, message.getJMSDeliveryMode(), message.getJMSPriority(), getTimeToLive(message)); } else { super.doSend(producer, message); } }
@Override public void send(Destination destination, Message message) throws JMSException { internalSend((RMQDestination) destination, message, message.propertyExists(JMS_MESSAGE_DELIVERY_MODE) ? message.getJMSDeliveryMode() : getDeliveryMode(), message.propertyExists(JMS_MESSAGE_PRIORITY) ? message.getJMSPriority() : getPriority(), message.propertyExists(JMS_MESSAGE_EXPIRATION) ? message.getJMSExpiration() : getTimeToLive(), message.propertyExists(JMS_MESSAGE_EXPIRATION) ? MessageExpirationType.EXPIRATION : MessageExpirationType.TTL); }