public class SimpMessageHeaderAccessor extends NativeMessageHeaderAccessor
Use one of the static factory method in this class, then call getters and setters,
and at the end if necessary call MessageHeaderAccessor.toMap()
to obtain the updated headers.
Modifier and Type | Field and Description |
---|---|
static String |
CONNECT_MESSAGE_HEADER |
static String |
DESTINATION_HEADER |
static String |
MESSAGE_TYPE_HEADER |
static String |
ORIGINAL_DESTINATION
For internal use.
|
static String |
SESSION_ATTRIBUTES |
static String |
SESSION_ID_HEADER |
static String |
SUBSCRIPTION_ID_HEADER |
static String |
USER_HEADER |
NATIVE_HEADERS
DEFAULT_CHARSET, logger
Modifier | Constructor and Description |
---|---|
protected |
SimpMessageHeaderAccessor(Message<?> message)
A constructor for accessing and modifying existing message headers.
|
protected |
SimpMessageHeaderAccessor(SimpMessageType messageType,
Map<String,List<String>> externalSourceHeaders)
A constructor for creating new message headers.
|
Modifier and Type | Method and Description |
---|---|
static SimpMessageHeaderAccessor |
create()
Create an instance with
SimpMessageType MESSAGE . |
static SimpMessageHeaderAccessor |
create(SimpMessageType messageType)
Create an instance with the given
SimpMessageType . |
protected MessageHeaderAccessor |
createAccessor(Message<?> message)
Build a 'nested' accessor for the given message.
|
String |
getDestination() |
static String |
getDestination(Map<String,Object> headers) |
String |
getDetailedLogMessage(Object payload)
Return a more detailed message for logging purposes.
|
SimpMessageType |
getMessageType() |
static SimpMessageType |
getMessageType(Map<String,Object> headers) |
Map<String,Object> |
getSessionAttributes()
Return the attributes associated with the current session.
|
static Map<String,Object> |
getSessionAttributes(Map<String,Object> headers) |
String |
getSessionId() |
static String |
getSessionId(Map<String,Object> headers) |
String |
getShortLogMessage(Object payload)
Return a concise message for logging purposes.
|
String |
getSubscriptionId() |
static String |
getSubscriptionId(Map<String,Object> headers) |
Principal |
getUser()
Return the user associated with the current session.
|
static Principal |
getUser(Map<String,Object> headers) |
void |
setDestination(String destination) |
void |
setMessageTypeIfNotSet(SimpMessageType messageType) |
void |
setSessionAttributes(Map<String,Object> attributes)
A static alternative for access to the session attributes header.
|
void |
setSessionId(String sessionId) |
void |
setSubscriptionId(String subscriptionId) |
void |
setUser(Principal principal) |
static SimpMessageHeaderAccessor |
wrap(Message<?> message)
Create an instance from the payload and headers of the given Message.
|
addNativeHeader, containsNativeHeader, getFirstNativeHeader, getNativeHeader, removeNativeHeader, setImmutable, setNativeHeader, toNativeHeaderMap
copyHeaders, copyHeadersIfAbsent, getAccessor, getAccessor, getContentType, getDetailedPayloadLogMessage, getErrorChannel, getHeader, getId, getMessageHeaders, getMutableAccessor, getReplyChannel, getShortPayloadLogMessage, getTimestamp, isModified, isMutable, isReadableContentType, isReadOnly, removeHeader, removeHeaders, setContentType, setErrorChannel, setErrorChannelName, setHeader, setHeaderIfAbsent, setLeaveMutable, setModified, setReplyChannel, setReplyChannelName, toMap, toMessageHeaders, toString, verifyType
public static final String CONNECT_MESSAGE_HEADER
public static final String DESTINATION_HEADER
public static final String MESSAGE_TYPE_HEADER
public static final String SESSION_ID_HEADER
public static final String SESSION_ATTRIBUTES
public static final String SUBSCRIPTION_ID_HEADER
public static final String USER_HEADER
public static final String ORIGINAL_DESTINATION
The original destination used by a client when subscribing. Such a destination may have been modified (e.g. user destinations) on the server side. This header provides a hint so messages sent to clients may have a destination matching to their original subscription.
protected SimpMessageHeaderAccessor(SimpMessageType messageType, Map<String,List<String>> externalSourceHeaders)
protected SimpMessageHeaderAccessor(Message<?> message)
protected MessageHeaderAccessor createAccessor(Message<?> message)
MessageHeaderAccessor
createAccessor
in class MessageHeaderAccessor
message
- the message to build a new accessor forpublic void setMessageTypeIfNotSet(SimpMessageType messageType)
public SimpMessageType getMessageType()
public void setDestination(String destination)
public String getDestination()
public void setSubscriptionId(String subscriptionId)
public String getSubscriptionId()
public void setSessionId(String sessionId)
public String getSessionId()
public void setSessionAttributes(Map<String,Object> attributes)
public Map<String,Object> getSessionAttributes()
public void setUser(Principal principal)
public Principal getUser()
public String getShortLogMessage(Object payload)
MessageHeaderAccessor
getShortLogMessage
in class MessageHeaderAccessor
payload
- the payload that corresponds to the headers.public String getDetailedLogMessage(Object payload)
MessageHeaderAccessor
getDetailedLogMessage
in class MessageHeaderAccessor
payload
- the payload that corresponds to the headers.public static SimpMessageHeaderAccessor create()
SimpMessageType
MESSAGE
.public static SimpMessageHeaderAccessor create(SimpMessageType messageType)
SimpMessageType
.public static SimpMessageHeaderAccessor wrap(Message<?> message)
public static SimpMessageType getMessageType(Map<String,Object> headers)
public static Map<String,Object> getSessionAttributes(Map<String,Object> headers)