@Transformer public Message<?> getConfig(Message<?> msg) { Integer rfc = msg.getHeaders().get("rfc", Integer.class); ArchiveConfig spec = asm.fetch(rfc); MessageBuilder<?> mb = MessageBuilder.fromMessage(msg); mb.setHeader("spec", spec); return mb.build(); }
public Message<HelloResponse> sayHello(Message<HelloRequest> request) { HelloResponse response = new HelloResponse(); response.setMessageId(request.getPayload().getMessageId()); response.setCorrelationId(request.getPayload().getCorrelationId()); response.setUser("HelloService"); response.setText("Hello " + request.getPayload().getUser()); MessageBuilder<HelloResponse> builder = MessageBuilder.withPayload(response); builder.setHeader("CorrelationId", request.getHeaders().get("CorrelationId")); builder.setHeader("Operation", "sayHello"); builder.setHeader("Type", "response"); return builder.build(); }
@Test @Ignore public void testSendingATweet() throws Throwable { MessageBuilder<String> mb = MessageBuilder.withPayload( "'Hello world!', from the Spring Integration outbound Twitter adapter") .setHeader(TwitterHeaders.TWITTER_IN_REPLY_TO_STATUS_ID, 21927437001L) .setHeader( TwitterHeaders.TWITTER_GEOLOCATION, new GeoLocation(-76.226823, 23.642465)) // antarctica .setHeader(TwitterHeaders.TWITTER_DISPLAY_COORDINATES, true); Message<String> m = mb.build(); this.messagingTemplate.send(this.channel, m); }
private static Message<?> createMessage( Object payload, Object correlationId, int sequenceSize, int sequenceNumber, MessageChannel replyChannel, String predefinedId) { MessageBuilder<Object> builder = MessageBuilder.withPayload(payload) .setCorrelationId(correlationId) .setSequenceSize(sequenceSize) .setSequenceNumber(sequenceNumber) .setReplyChannel(replyChannel); if (predefinedId != null) { builder.setHeader(MessageHeaders.ID, predefinedId); } return builder.build(); }