List of usage examples for org.springframework.amqp.core Message getMessageProperties
public MessageProperties getMessageProperties()
From source file:amqp.spring.camel.component.SpringAMQPHeader.java
public static SpringAMQPMessage setBasicPropertiesToHeaders(SpringAMQPMessage msg, Message amqpMessage) { byte[] correlationId = amqpMessage.getMessageProperties().getCorrelationId(); msg.getHeaders().put(CORRELATION_ID, correlationId == null ? null : new String(correlationId)); msg.getHeaders().put(CONTENT_ENCODING, amqpMessage.getMessageProperties().getContentEncoding()); msg.getHeaders().put(CONTENT_TYPE, amqpMessage.getMessageProperties().getContentType()); msg.getHeaders().put(EXPIRATION, amqpMessage.getMessageProperties().getExpiration()); msg.getHeaders().put(PRIORITY, amqpMessage.getMessageProperties().getPriority()); msg.getHeaders().put(REPLY_TO, amqpMessage.getMessageProperties().getReplyTo()); msg.getHeaders().put(TYPE, amqpMessage.getMessageProperties().getType()); return msg;/*from w w w .j a v a 2 s. co m*/ }
From source file:amqp.spring.camel.component.SpringAMQPHeader.java
public static Message copyHeaders(Message msg, Map<String, Object> headers) { for (Map.Entry<String, Object> headerEntry : headers.entrySet()) { if (!msg.getMessageProperties().getHeaders().containsKey(headerEntry.getKey())) { msg.getMessageProperties().setHeader(headerEntry.getKey(), headerEntry.getValue()); }//from w w w .j a v a 2 s. c om } return msg; }
From source file:amqp.spring.camel.component.SpringAMQPMessage.java
public static ExchangePattern getExchangePattern(org.springframework.amqp.core.Message amqpMessage) { String exchangePatternName;//from w w w .j a va 2 s. c o m exchangePatternName = (String) amqpMessage.getMessageProperties().getHeaders().get(EXCHANGE_PATTERN); if (exchangePatternName == null) //Safe default exchangePatternName = ExchangePattern.InOptionalOut.name(); return ExchangePattern.valueOf(exchangePatternName); }
From source file:amqp.spring.camel.component.SpringAMQPHeader.java
public static Message setBasicPropertiesFromHeaders(Message msg, Map<String, Object> headers) { for (Map.Entry<String, Object> headerEntry : headers.entrySet()) { String headerKey = headerEntry.getKey(); Object headerValue = headerEntry.getValue(); String headerValueString = null; if (headerValue != null) { headerValueString = headerValue.toString(); }// w ww . ja v a 2 s.c o m //Not switching on a string since we want to support Java >= 1.6 if (CONTENT_ENCODING.equals(headerKey)) { msg.getMessageProperties().setContentEncoding(headerValueString); } else if (CONTENT_TYPE.equals(headerKey)) { msg.getMessageProperties().setContentType(headerValueString); } else if (CORRELATION_ID.equals(headerKey)) { byte[] correlationId = headerValueString != null ? headerValueString.getBytes() : null; msg.getMessageProperties().setCorrelationId(correlationId); } else if (EXPIRATION.equals(headerKey)) { msg.getMessageProperties().setExpiration(headerValueString); } else if (PRIORITY.equals(headerKey)) { Integer priority = headerValueString != null ? Integer.parseInt(headerValueString) : null; msg.getMessageProperties().setPriority(priority); } else if (REPLY_TO.equals(headerKey)) { msg.getMessageProperties().setReplyTo(headerValueString); } else if (TYPE.equals(headerKey)) { msg.getMessageProperties().setType(headerValueString); } } return msg; }
From source file:amqp.spring.camel.component.SpringAMQPMessage.java
public static SpringAMQPMessage fromAMQPMessage(MessageConverter msgConverter, org.springframework.amqp.core.Message amqpMessage) { if (amqpMessage == null) { LOG.debug("Received NULL AMQP Message, returning null"); return null; }// w w w. j av a 2 s .c om SpringAMQPMessage message = new SpringAMQPMessage(); //Restore the body based on the message converter provided if (amqpMessage.getBody() == null || amqpMessage.getBody().length == 0) { message.setBody(null); } else { if (LOG.isTraceEnabled()) { String asText = new String(amqpMessage.getBody()); LOG.trace("Translating From AMQP Message: " + asText); } message.setBody(msgConverter.fromMessage(amqpMessage)); } //Set & restore headers from AMQP message = SpringAMQPHeader.setBasicPropertiesToHeaders(message, amqpMessage); message = SpringAMQPHeader.copyHeaders(message, amqpMessage.getMessageProperties().getHeaders()); return message; }
From source file:org.carewebframework.amqp.rabbitmq.Subscriber.java
@Override protected void invokeListener(Channel channel, Message message) throws Exception { MessageProperties props = message.getMessageProperties(); String recipients = props == null ? null : (String) props.getHeaders().get(Broker.RECIPIENTS_PROPERTY); boolean found = true; if (recipients != null) { for (String recipient : recipients.split("\\,")) { found = recipientIds.contains(recipient); if (found) { break; }/* ww w.j a v a 2 s .c o m*/ } } if (found) { super.invokeListener(channel, message); } }
From source file:cu.uci.uengine.amqp.SubmitsListener.java
@Override public void onMessage(Message message, Channel channel) throws Exception { message.getMessageProperties().setHeader("__TypeId__", "cu.uci.uengine.model.dto.SubmissionDTO"); try {/*from ww w. j a va2s . com*/ SubmissionDTO submissionDTO = (SubmissionDTO) jsonMessageConverter.fromMessage(message); Submission submit = new SubmissionDTOToSubmissionAdapter(submissionDTO); log.info(String.format("Working on submission: %s", submit.toString())); Submission result = engine.call(submit); log.info(String.format("Sending sid %s: %s. %s", result.getId(), result.getVerdict(), result.getErrorMessage() == null ? "" : result.getErrorMessage())); VerdictDTO verdict = new SubmissionToVerdictDTOAdapter(result); submitTemplate.convertAndSend(verdict, new MessagePostProcessor() { @Override public Message postProcessMessage(Message message) throws AmqpException { message.getMessageProperties().setHeader("__TypeId__", "UEngineVerdict"); return message; } }); channel.basicAck(message.getMessageProperties().getDeliveryTag(), false); } catch (MessageConversionException messageConversionException) { channel.basicNack(message.getMessageProperties().getDeliveryTag(), false, false); log.error(String.format("Wrong submission format: %s", messageConversionException.getMessage())); } catch (Exception ex) { channel.basicNack(message.getMessageProperties().getDeliveryTag(), false, false); log.error(String.format("Error preocessing message with correlationId: %s", message.getMessageProperties().getCorrelationId())); } }
From source file:com.jbrisbin.vpc.jobsched.exe.ExeMessageConverter.java
public Object fromMessage(Message message) throws MessageConversionException { MessageProperties props = message.getMessageProperties(); if (isAuthorized(props)) { //Map<String, Object> headers = props.getHeaders(); byte[] bytes = message.getBody(); ExeMessage msg;/*from w w w. j a va 2 s .com*/ try { msg = mapObject(bytes, ExeMessage.class); if (log.isDebugEnabled()) { log.debug(String.format(" MSG: %s", msg)); } } catch (IOException e) { throw new MessageConversionException(e.getMessage(), e); } return msg; } else { throw new MessageConversionException("Invalid security key."); } }
From source file:com.jbrisbin.vpc.jobsched.sql.SqlMessageConverter.java
public Object fromMessage(Message message) throws MessageConversionException { MessageProperties props = message.getMessageProperties(); if (isAuthorized(props)) { //Map<String, Object> headers = props.getHeaders(); byte[] bytes = message.getBody(); SqlMessage msg;/*from w w w . java 2s . c o m*/ try { msg = mapObject(bytes, SqlMessage.class); msg.setId(new String(props.getCorrelationId())); msg.setReplyTo(props.getReplyTo().toString()); if (log.isDebugEnabled()) { log.debug(String.format(" MSG: %s", msg)); } } catch (IOException e) { throw new MessageConversionException(e.getMessage(), e); } return msg; } else { throw new MessageConversionException("Invalid security key."); } }
From source file:amqp.spring.camel.component.SpringAMQPHeaderTest.java
@Test public void copyAMQPHeaders() throws Exception { MessageProperties properties = new MessageProperties(); properties.setHeader("NotSecret", "Popcorn"); org.springframework.amqp.core.Message message = new Message(new byte[] {}, properties); message.getMessageProperties().setReplyTo("BuzzSaw"); SpringAMQPMessage camelMessage = SpringAMQPHeader.copyHeaders(new SpringAMQPMessage(), message.getMessageProperties().getHeaders()); Assert.assertEquals("Popcorn", camelMessage.getHeader("NotSecret")); Assert.assertNull(camelMessage.getHeader(SpringAMQPHeader.REPLY_TO)); }