Polish
This commit is contained in:
parent
64bc9b4311
commit
b35b50bef1
|
|
@ -22,13 +22,30 @@ import java.util.Iterator;
|
||||||
import org.springframework.lang.Nullable;
|
import org.springframework.lang.Nullable;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A base class for {@link MessageCondition} types providing implementations of
|
* Base class for {@code MessageCondition's} that pre-declares abstract methods
|
||||||
* {@link #equals(Object)}, {@link #hashCode()}, and {@link #toString()}.
|
* {@link #getContent()} and {@link #getToStringInfix()} in order to provide
|
||||||
|
* implementations of {@link #equals(Object)}, {@link #hashCode()}, and
|
||||||
|
* {@link #toString()}.
|
||||||
*
|
*
|
||||||
* @author Rossen Stoyanchev
|
* @author Rossen Stoyanchev
|
||||||
* @since 4.0
|
* @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
|
@Override
|
||||||
public boolean equals(@Nullable Object obj) {
|
public boolean equals(@Nullable Object obj) {
|
||||||
|
|
@ -61,17 +78,4 @@ public abstract class AbstractMessageCondition<T extends AbstractMessageConditio
|
||||||
return builder.toString();
|
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;
|
package org.springframework.messaging.simp;
|
||||||
|
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
import org.springframework.lang.Nullable;
|
import org.springframework.lang.Nullable;
|
||||||
import org.springframework.messaging.Message;
|
import org.springframework.messaging.Message;
|
||||||
|
|
@ -25,7 +26,8 @@ import org.springframework.messaging.handler.AbstractMessageCondition;
|
||||||
import org.springframework.util.Assert;
|
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
|
* @author Rossen Stoyanchev
|
||||||
* @since 4.0
|
* @since 4.0
|
||||||
|
|
@ -58,7 +60,7 @@ public class SimpMessageTypeMessageCondition extends AbstractMessageCondition<Si
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected Collection<?> getContent() {
|
protected Collection<?> getContent() {
|
||||||
return Arrays.asList(this.messageType);
|
return Collections.singletonList(this.messageType);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
@ -80,15 +82,15 @@ public class SimpMessageTypeMessageCondition extends AbstractMessageCondition<Si
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int compareTo(SimpMessageTypeMessageCondition other, Message<?> message) {
|
public int compareTo(SimpMessageTypeMessageCondition other, Message<?> message) {
|
||||||
Object actualMessageType = SimpMessageHeaderAccessor.getMessageType(message.getHeaders());
|
Object actual = SimpMessageHeaderAccessor.getMessageType(message.getHeaders());
|
||||||
if (actualMessageType != null) {
|
if (actual != null) {
|
||||||
if (actualMessageType.equals(this.getMessageType()) && actualMessageType.equals(other.getMessageType())) {
|
if (actual.equals(this.messageType) && actual.equals(other.getMessageType())) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
else if (actualMessageType.equals(this.getMessageType())) {
|
else if (actual.equals(this.messageType)) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
else if (actualMessageType.equals(other.getMessageType())) {
|
else if (actual.equals(other.getMessageType())) {
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue