Polish
This commit is contained in:
parent
64bc9b4311
commit
b35b50bef1
|
|
@ -22,13 +22,30 @@ import java.util.Iterator;
|
|||
import org.springframework.lang.Nullable;
|
||||
|
||||
/**
|
||||
* A base class for {@link MessageCondition} types providing implementations of
|
||||
* {@link #equals(Object)}, {@link #hashCode()}, and {@link #toString()}.
|
||||
* Base class for {@code MessageCondition's} that pre-declares abstract methods
|
||||
* {@link #getContent()} and {@link #getToStringInfix()} in order to provide
|
||||
* implementations of {@link #equals(Object)}, {@link #hashCode()}, and
|
||||
* {@link #toString()}.
|
||||
*
|
||||
* @author Rossen Stoyanchev
|
||||
* @since 4.0
|
||||
*/
|
||||
public abstract class AbstractMessageCondition<T extends AbstractMessageCondition<T>> implements MessageCondition<T> {
|
||||
public abstract class AbstractMessageCondition<T extends AbstractMessageCondition<T>>
|
||||
implements MessageCondition<T> {
|
||||
|
||||
|
||||
/**
|
||||
* Return the collection of objects the message condition is composed of
|
||||
* (e.g. destination patterns), never {@code null}.
|
||||
*/
|
||||
protected abstract Collection<?> getContent();
|
||||
|
||||
/**
|
||||
* The notation to use when printing discrete items of content.
|
||||
* For example " || " for URL patterns or " && " for param expressions.
|
||||
*/
|
||||
protected abstract String getToStringInfix();
|
||||
|
||||
|
||||
@Override
|
||||
public boolean equals(@Nullable Object obj) {
|
||||
|
|
@ -61,17 +78,4 @@ public abstract class AbstractMessageCondition<T extends AbstractMessageConditio
|
|||
return builder.toString();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Return the collection of objects the message condition is composed of
|
||||
* (e.g. destination patterns), never {@code null}.
|
||||
*/
|
||||
protected abstract Collection<?> getContent();
|
||||
|
||||
/**
|
||||
* The notation to use when printing discrete items of content.
|
||||
* For example " || " for URL patterns or " && " for param expressions.
|
||||
*/
|
||||
protected abstract String getToStringInfix();
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -16,8 +16,9 @@
|
|||
|
||||
package org.springframework.messaging.simp;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Collection;
|
||||
import java.util.Collections;
|
||||
import java.util.Map;
|
||||
|
||||
import org.springframework.lang.Nullable;
|
||||
import org.springframework.messaging.Message;
|
||||
|
|
@ -25,7 +26,8 @@ import org.springframework.messaging.handler.AbstractMessageCondition;
|
|||
import org.springframework.util.Assert;
|
||||
|
||||
/**
|
||||
* A message condition that checks the message type.
|
||||
* {@code MessageCondition} that matches by the message type obtained via
|
||||
* {@link SimpMessageHeaderAccessor#getMessageType(Map)}.
|
||||
*
|
||||
* @author Rossen Stoyanchev
|
||||
* @since 4.0
|
||||
|
|
@ -58,7 +60,7 @@ public class SimpMessageTypeMessageCondition extends AbstractMessageCondition<Si
|
|||
|
||||
@Override
|
||||
protected Collection<?> getContent() {
|
||||
return Arrays.asList(this.messageType);
|
||||
return Collections.singletonList(this.messageType);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -80,15 +82,15 @@ public class SimpMessageTypeMessageCondition extends AbstractMessageCondition<Si
|
|||
|
||||
@Override
|
||||
public int compareTo(SimpMessageTypeMessageCondition other, Message<?> message) {
|
||||
Object actualMessageType = SimpMessageHeaderAccessor.getMessageType(message.getHeaders());
|
||||
if (actualMessageType != null) {
|
||||
if (actualMessageType.equals(this.getMessageType()) && actualMessageType.equals(other.getMessageType())) {
|
||||
Object actual = SimpMessageHeaderAccessor.getMessageType(message.getHeaders());
|
||||
if (actual != null) {
|
||||
if (actual.equals(this.messageType) && actual.equals(other.getMessageType())) {
|
||||
return 0;
|
||||
}
|
||||
else if (actualMessageType.equals(this.getMessageType())) {
|
||||
else if (actual.equals(this.messageType)) {
|
||||
return -1;
|
||||
}
|
||||
else if (actualMessageType.equals(other.getMessageType())) {
|
||||
else if (actual.equals(other.getMessageType())) {
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue