Class CompositeMessageCondition
- java.lang.Object
- org.springframework.messaging.handler.CompositeMessageCondition
- All Implemented Interfaces:
MessageCondition<CompositeMessageCondition>
public class CompositeMessageCondition extends Object implements MessageCondition<CompositeMessageCondition>
CompositeMessageConditionthat delegates to other message conditions.For
combine(org.springframework.messaging.handler.CompositeMessageCondition)andcompareTo(org.springframework.messaging.handler.CompositeMessageCondition, org.springframework.messaging.Message<?>)it is expected that the "other" composite contains the same number, type, and order of message conditions.- Since:
- 5.2
- Author:
- Rossen Stoyanchev
Constructor Summary
Constructors Constructor Description CompositeMessageCondition(MessageCondition<?>... messageConditions)
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CompositeMessageConditioncombine(CompositeMessageCondition other)Define the rules for combining this condition with another.intcompareTo(CompositeMessageCondition other, Message<?> message)Compare this condition to another in the context of a specific message.booleanequals(Object other)<T extends MessageCondition<T>>
TgetCondition(Class<T> messageConditionType)CompositeMessageConditiongetMatchingCondition(Message<?> message)Check if this condition matches the given Message and returns a potentially new condition with content tailored to the current message.List<MessageCondition<?>>getMessageConditions()inthashCode()StringtoString()
Constructor Detail
CompositeMessageCondition
public CompositeMessageCondition(MessageCondition<?>... messageConditions)
Method Detail
getMessageConditions
public List<MessageCondition<?>> getMessageConditions()
getCondition
public <T extends MessageCondition<T>> T getCondition(Class<T> messageConditionType)
combine
public CompositeMessageCondition combine(CompositeMessageCondition other)
Description copied from interface:MessageConditionDefine the rules for combining this condition with another. For example combining type- and method-level conditions.- Specified by:
combinein interfaceMessageCondition<CompositeMessageCondition>- Parameters:
other- the condition to combine with- Returns:
- the resulting message condition
getMatchingCondition
public CompositeMessageCondition getMatchingCondition(Message<?> message)
Description copied from interface:MessageConditionCheck if this condition matches the given Message and returns a potentially new condition with content tailored to the current message. For example a condition with destination patterns might return a new condition with sorted, matching patterns only.- Specified by:
getMatchingConditionin interfaceMessageCondition<CompositeMessageCondition>- Returns:
- a condition instance in case of a match; or
nullif there is no match.
compareTo
public int compareTo(CompositeMessageCondition other, Message<?> message)
Description copied from interface:MessageConditionCompare this condition to another in the context of a specific message. It is assumed both instances have been obtained viaMessageCondition.getMatchingCondition(Message)to ensure they have content relevant to current message only.- Specified by:
compareToin interfaceMessageCondition<CompositeMessageCondition>