diff --git a/spring-jms/src/main/java/org/springframework/jms/core/MessagePostProcessor.java b/spring-jms/src/main/java/org/springframework/jms/core/MessagePostProcessor.java index c36c7dafb66..84c4c5da944 100644 --- a/spring-jms/src/main/java/org/springframework/jms/core/MessagePostProcessor.java +++ b/spring-jms/src/main/java/org/springframework/jms/core/MessagePostProcessor.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2005 the original author or authors. + * Copyright 2002-2020 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,11 +20,12 @@ import javax.jms.JMSException; import javax.jms.Message; /** - * To be used with JmsTemplate's send method that convert an object to a message. - * It allows for further modification of the message after it has been processed - * by the converter. This is useful for setting of JMS Header and Properties. + * To be used with JmsTemplate's send method that converts an object to a message. * - *

This often as an anonymous class within a method implementation. + *

This allows for further modification of the message after it has been processed + * by the converter and is useful for setting JMS headers and properties. + * + *

Often implemented as a lambda expression or as an anonymous inner class. * * @author Mark Pollack * @since 1.1 @@ -32,13 +33,15 @@ import javax.jms.Message; * @see JmsTemplate#convertAndSend(javax.jms.Destination, Object, MessagePostProcessor) * @see org.springframework.jms.support.converter.MessageConverter */ +@FunctionalInterface public interface MessagePostProcessor { /** - * Apply a MessagePostProcessor to the message. The returned message is - * typically a modified version of the original. + * Process the given message. + *

The returned message is typically a modified version of the original. * @param message the JMS message from the MessageConverter - * @return the modified version of the Message + * @return a post-processed variant of the message, or simply the incoming + * message; never {@code null} * @throws javax.jms.JMSException if thrown by JMS API methods */ Message postProcessMessage(Message message) throws JMSException; diff --git a/spring-messaging/src/main/java/org/springframework/messaging/core/MessagePostProcessor.java b/spring-messaging/src/main/java/org/springframework/messaging/core/MessagePostProcessor.java index 92e78ef50e7..04e3dfcaea9 100644 --- a/spring-messaging/src/main/java/org/springframework/messaging/core/MessagePostProcessor.java +++ b/spring-messaging/src/main/java/org/springframework/messaging/core/MessagePostProcessor.java @@ -28,13 +28,14 @@ import org.springframework.messaging.Message; * @see MessageSendingOperations * @see MessageRequestReplyOperations */ +@FunctionalInterface public interface MessagePostProcessor { /** * Process the given message. * @param message the message to process - * @return a post-processed variant of the message, - * or simply the incoming message; never {@code null} + * @return a post-processed variant of the message, or simply the incoming + * message; never {@code null} */ Message postProcessMessage(Message message);