本文整理了Java中org.springframework.messaging.Message.getHeaders()
方法的一些代码示例,展示了Message.getHeaders()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Message.getHeaders()
方法的具体详情如下:
包路径:org.springframework.messaging.Message
类名称:Message
方法名:getHeaders
[英]Return message headers for the message (never null but may be empty).
[中]返回消息的消息头(从不为null,但可以为空)。
代码示例来源:origin: spring-projects/spring-framework
@Override
public void afterMessageHandled(
Message<?> msg, MessageChannel ch, MessageHandler handler, @Nullable Exception ex) {
Runnable task = (Runnable) msg.getHeaders().get(OrderedMessageSender.COMPLETION_TASK_HEADER);
if (task != null) {
task.run();
}
}
}
代码示例来源:origin: spring-projects/spring-framework
/**
* A constructor accepting the headers of an existing message to copy.
* @param message a message to copy the headers from, or {@code null} if none
*/
public MessageHeaderAccessor(@Nullable Message<?> message) {
this.headers = new MutableMessageHeaders(message != null ? message.getHeaders() : null);
}
代码示例来源:origin: spring-projects/spring-framework
@Override
@Nullable
protected String getDestination(Message<?> message) {
return SimpMessageHeaderAccessor.getDestination(message.getHeaders());
}
代码示例来源:origin: spring-projects/spring-framework
/**
* Encodes the given STOMP {@code message} into a {@code byte[]}.
* @param message the message to encode
* @return the encoded message
*/
public byte[] encode(Message<byte[]> message) {
return encode(message.getHeaders(), message.getPayload());
}
代码示例来源:origin: spring-projects/spring-framework
@Override
protected Object convertFromInternal(Message<?> message, Class<?> targetClass, @Nullable Object conversionHint) {
Charset charset = getContentTypeCharset(getMimeType(message.getHeaders()));
Object payload = message.getPayload();
return (payload instanceof String ? payload : new String((byte[]) payload, charset));
}
代码示例来源:origin: spring-projects/spring-framework
@Override
public void afterSendCompletion(
Message<?> message, MessageChannel channel, boolean sent, @Nullable Exception ex) {
if (!sent) {
SimpMessageType messageType = SimpMessageHeaderAccessor.getMessageType(message.getHeaders());
if (SimpMessageType.DISCONNECT.equals(messageType)) {
logger.debug("Detected unsent DISCONNECT message. Processing anyway.");
handleMessage(message);
}
}
}
}
代码示例来源:origin: spring-projects/spring-framework
@Override
protected void addSubscriptionInternal(
String sessionId, String subsId, String destination, Message<?> message) {
Expression expression = getSelectorExpression(message.getHeaders());
this.subscriptionRegistry.addSubscription(sessionId, subsId, destination, expression);
this.destinationCache.updateAfterNewSubscription(destination, sessionId, subsId);
}
代码示例来源:origin: spring-projects/spring-framework
@Override
public void handleMessage(Message<?> message) throws MessagingException {
if (SimpMessageType.HEARTBEAT == SimpMessageHeaderAccessor.getMessageType(message.getHeaders())) {
return;
}
this.queue.add(message);
}
代码示例来源:origin: spring-projects/spring-framework
@Override
public void handleMessage(Message<?> message) throws MessagingException {
MessageChannel replyChannel = (MessageChannel) message.getHeaders().getReplyChannel();
replyChannel.send(new GenericMessage<>("response"));
}
});
代码示例来源:origin: spring-projects/spring-framework
@Test
public void handleSubscribe() {
given(this.brokerChannel.send(Mockito.any(Message.class))).willReturn(true);
this.handler.handleMessage(createWith(SimpMessageType.SUBSCRIBE, "joe", SESSION_ID, "/user/queue/foo"));
ArgumentCaptor<Message> captor = ArgumentCaptor.forClass(Message.class);
Mockito.verify(this.brokerChannel).send(captor.capture());
Message message = captor.getValue();
assertEquals("/queue/foo-user123", SimpMessageHeaderAccessor.getDestination(message.getHeaders()));
}
代码示例来源:origin: spring-projects/spring-framework
@Test
public void toMessageUtf16() {
MappingJackson2MessageConverter converter = new MappingJackson2MessageConverter();
MimeType contentType = new MimeType("application", "json", StandardCharsets.UTF_16BE);
Map<String, Object> map = new HashMap<>();
map.put(MessageHeaders.CONTENT_TYPE, contentType);
MessageHeaders headers = new MessageHeaders(map);
String payload = "H\u00e9llo W\u00f6rld";
Message<?> message = converter.toMessage(payload, headers);
assertEquals("\"" + payload + "\"", new String((byte[]) message.getPayload(), StandardCharsets.UTF_16BE));
assertEquals(contentType, message.getHeaders().get(MessageHeaders.CONTENT_TYPE));
}
代码示例来源:origin: spring-projects/spring-framework
@Test
public void toMessageWithPayloadAndHeaders() {
MessageHeaders headers = new MessageHeaders(Collections.<String, Object>singletonMap("foo", "bar"));
Message<?> message = this.converter.toMessage("payload", headers);
assertEquals("payload", message.getPayload());
assertEquals("bar", message.getHeaders().get("foo"));
}
代码示例来源:origin: spring-projects/spring-framework
@Test
public void testHeaderValues() {
Message<String> message = MessageBuilder.withPayload("test")
.setHeader("foo", "bar")
.setHeader("count", 123)
.build();
assertEquals("bar", message.getHeaders().get("foo", String.class));
assertEquals(new Integer(123), message.getHeaders().get("count", Integer.class));
}
代码示例来源:origin: spring-projects/spring-framework
@Test
public void createIdRegenerated() {
Message<String> message1 = MessageBuilder.withPayload("test")
.setHeader("foo", "bar").build();
Message<String> message2 = MessageBuilder.fromMessage(message1).setHeader("another", 1).build();
assertEquals("bar", message2.getHeaders().get("foo"));
assertNotSame(message1.getHeaders().getId(), message2.getHeaders().getId());
}
代码示例来源:origin: spring-projects/spring-framework
@Test
public void toMessageContentTypeHeader() {
Message<?> message = this.converter.toMessage("ABC", null);
assertEquals(MimeTypeUtils.TEXT_PLAIN, message.getHeaders().get(MessageHeaders.CONTENT_TYPE));
}
代码示例来源:origin: spring-projects/spring-framework
@Test
public void toMessageWithPayloadAndMutableHeaders() {
MessageHeaderAccessor accessor = new MessageHeaderAccessor();
accessor.setHeader("foo", "bar");
accessor.setLeaveMutable(true);
MessageHeaders headers = accessor.getMessageHeaders();
Message<?> message = this.converter.toMessage("payload", headers);
assertEquals("payload", message.getPayload());
assertSame(headers, message.getHeaders());
assertEquals("bar", message.getHeaders().get("foo"));
}
}
代码示例来源:origin: spring-projects/spring-framework
@Test
public void jmsCorrelationIdIgnoredIfIncorrectType() throws JMSException {
Message<String> message = initBuilder()
.setHeader(JmsHeaders.CORRELATION_ID, new Date()).build();
javax.jms.Message jmsMessage = new StubTextMessage();
mapper.fromHeaders(message.getHeaders(), jmsMessage);
assertNull(jmsMessage.getJMSCorrelationID());
}
代码示例来源:origin: spring-projects/spring-framework
@Test
public void createFromMessage() {
Message<String> message1 = MessageBuilder.withPayload("test")
.setHeader("foo", "bar").build();
Message<String> message2 = MessageBuilder.fromMessage(message1).build();
assertEquals("test", message2.getPayload());
assertEquals("bar", message2.getHeaders().get("foo"));
}
代码示例来源:origin: spring-projects/spring-framework
@Test
public void convertAndSendPayloadWithPostProcessorToDestination() {
this.template.convertAndSend("somewhere", "payload", this.postProcessor);
assertEquals("somewhere", this.template.destination);
assertNotNull(this.template.message);
assertEquals("expected 'id' and 'timestamp' headers only", 2, this.template.message.getHeaders().size());
assertEquals("payload", this.template.message.getPayload());
assertNotNull(this.postProcessor.getMessage());
assertSame(this.template.message, this.postProcessor.getMessage());
}
代码示例来源:origin: spring-projects/spring-framework
@Test
public void convertAndSendPayloadWithPostProcessor() {
this.template.setDefaultDestination("home");
this.template.convertAndSend((Object) "payload", this.postProcessor);
assertEquals("home", this.template.destination);
assertNotNull(this.template.message);
assertEquals("expected 'id' and 'timestamp' headers only", 2, this.template.message.getHeaders().size());
assertEquals("payload", this.template.message.getPayload());
assertNotNull(this.postProcessor.getMessage());
assertSame(this.template.message, this.postProcessor.getMessage());
}
内容来源于网络,如有侵权,请联系作者删除!