Example usage for org.springframework.integration.support MessageBuilder setHeader

List of usage examples for org.springframework.integration.support MessageBuilder setHeader

Introduction

In this page you can find the example usage for org.springframework.integration.support MessageBuilder setHeader.

Prototype

@Override
public MessageBuilder<T> setHeader(String headerName, @Nullable Object headerValue) 

Source Link

Document

Set the value for the given header name.

Usage

From source file:com.consol.citrus.samples.greeting.GreetingService.java

@Override
public Message<GreetingResponseMessage> processMessage(Message<GreetingRequestMessage> request) {
    GreetingResponseMessage response = new GreetingResponseMessage();
    response.setOperation(request.getPayload().getOperation());
    response.setCorrelationId(request.getPayload().getCorrelationId());
    response.setUser("GreetingService");
    response.setText("Hello " + request.getPayload().getUser() + "!");

    MessageBuilder<GreetingResponseMessage> builder = MessageBuilder.withPayload(response);
    builder.setHeader("CorrelationId", request.getHeaders().get("CorrelationId"));
    builder.setHeader("Operation", "sayHello");
    builder.setHeader("Type", "response");

    return builder.build();
}

From source file:com.consol.citrus.samples.flightbooking.FlightAggregator.java

public Message<TravelBookingResponseMessage> processFlights(List<FlightBookingConfirmationMessage> messages) {
    TravelBookingResponseMessage responseMessage = new TravelBookingResponseMessage();

    List<Flight> flights = new ArrayList<Flight>();
    for (FlightBookingConfirmationMessage confirmationMessage : messages) {
        flights.add(confirmationMessage.getFlight());
    }//ww w  .j  a  v  a  2s  . c  o  m

    Flights flightContainer = new Flights();
    flightContainer.getFlights().addAll(flights);
    responseMessage.setFlights(flightContainer);
    responseMessage.setCorrelationId(messages.get(0).getCorrelationId());
    responseMessage.setSuccess(true);

    MessageBuilder<TravelBookingResponseMessage> messageBuilder = MessageBuilder.withPayload(responseMessage);
    messageBuilder.setHeader("correlationId", responseMessage.getCorrelationId());

    return messageBuilder.build();
}

From source file:siia.business.EmailHeaderEnricher.java

public Message<Passenger> populateEmailHeader(Passenger passenger, @Headers Map<String, Object> headers) {

    MessageBuilder<Passenger> responseBuilder = MessageBuilder.withPayload(passenger).copyHeaders(headers);
    Profile profile = passenger.getProfile();
    if (profile != null) {
        String emailAddress = profile.getEmailAddress();
        if (emailAddress != null) {
            responseBuilder.setHeader(MailHeaders.TO, emailAddress);
        }/* w  w  w  .ja v a2  s .  c om*/
    }
    return responseBuilder.build();
}

From source file:org.springframework.integration.aggregator.AggregatorTests.java

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);
    }/*from w  w  w. j a va  2  s.co m*/
    return builder.build();
}

From source file:org.springframework.integration.handler.MethodInvokingMessageProcessorAnnotationTests.java

private Message<?> getMessage() {
    MessageBuilder<Employee> builder = MessageBuilder.withPayload(employee);
    builder.setHeader("day", "monday");
    builder.setHeader("month", "September");
    Message<Employee> message = builder.build();
    return message;
}

From source file:org.springframework.integration.http.DefaultInboundRequestMapper.java

private void populateHeaders(HttpServletRequest request, MessageBuilder<?> builder) {
    Enumeration<?> headerNames = request.getHeaderNames();
    if (headerNames != null) {
        while (headerNames.hasMoreElements()) {
            String headerName = (String) headerNames.nextElement();
            Enumeration<?> headerEnum = request.getHeaders(headerName);
            if (headerEnum != null) {
                List<Object> headers = new ArrayList<Object>();
                while (headerEnum.hasMoreElements()) {
                    headers.add(headerEnum.nextElement());
                }//  w w w.java  2  s. c o m
                if (headers.size() == 1) {
                    builder.setHeader(headerName, headers.get(0));
                } else if (headers.size() > 1) {
                    builder.setHeader(headerName, headers);
                }
            }
        }
    }
    builder.setHeader(HttpHeaders.REQUEST_URL, request.getRequestURL().toString());
    builder.setHeader(HttpHeaders.REQUEST_METHOD, request.getMethod());
    builder.setHeader(HttpHeaders.USER_PRINCIPAL, request.getUserPrincipal());
}

From source file:org.springframework.integration.ip.tcp.connection.TcpMessageMapper.java

protected final void addStandardHeaders(TcpConnection connection, MessageBuilder<?> messageBuilder) {
    String connectionId = connection.getConnectionId();
    messageBuilder.setHeader(IpHeaders.HOSTNAME, connection.getHostName())
            .setHeader(IpHeaders.IP_ADDRESS, connection.getHostAddress())
            .setHeader(IpHeaders.REMOTE_PORT, connection.getPort())
            .setHeader(IpHeaders.CONNECTION_ID, connectionId);
    if (this.applySequence) {
        messageBuilder.setCorrelationId(connectionId)
                .setSequenceNumber((int) connection.incrementAndGetConnectionSequence());
    }//w w  w. j  a  v a2s . c  om
}

From source file:org.springframework.integration.jmx.NotificationListeningMessageProducer.java

/**
 * Notification handling method implementation. Creates a Message with the
 * JMX {@link Notification} as its payload, and if the handback object is
 * not null, it sets that as a Message header value. The Message is then
 * sent to this producer's output channel.
 *//*from  www  .j  a v  a 2s  .co  m*/
public void handleNotification(Notification notification, Object handback) {
    if (logger.isInfoEnabled()) {
        logger.info("received notification: " + notification + ", and handback: " + handback);
    }
    MessageBuilder<?> builder = MessageBuilder.withPayload(notification);
    if (handback != null) {
        builder.setHeader(JmxHeaders.NOTIFICATION_HANDBACK, handback);
    }
    Message<?> message = builder.build();
    this.sendMessage(message);
}

From source file:org.springframework.integration.smpp.core.SmesMessageSpecification.java

/**
 * this method takes an inbound SMS message and converts it to a Spring Integration message
 *
 * @param dsm            the {@link DeliverSm} from {@link AbstractReceivingMessageListener#onTextMessage(org.jsmpp.bean.DeliverSm, String)}
 * @param txtMessage the String from {@link AbstractReceivingMessageListener#onTextMessage(org.jsmpp.bean.DeliverSm, String)}
 * @return a Spring Integration message/*from  ww  w  .java 2s  .c o m*/
 */
public static Message<?> toMessageFromSms(DeliverSm dsm, String txtMessage) {

    Assert.isTrue(!dsm.isSmscDeliveryReceipt(), "the message should not be a delivery confirmation receipt!");

    MessageBuilder<String> mb = MessageBuilder.withPayload(txtMessage);
    mb.setHeader(SmppConstants.SMS, dsm);
    mb.setHeader(SmppConstants.REPLACE_IF_PRESENT, dsm.getReplaceIfPresent());
    mb.setHeader(SmppConstants.SHORT_MESSAGE, dsm.getShortMessage());
    mb.setHeader(SmppConstants.OPTIONAL_PARAMETERS, dsm.getOptionalParameters());
    mb.setHeader(SmppConstants.UDHI_AND_REPLY_PATH, dsm.isUdhiAndReplyPath());
    mb.setHeader(SmppConstants.VALIDITY_PERIOD, dsm.getValidityPeriod());
    mb.setHeader(SmppConstants.COMMAND_LENGTH, dsm.getCommandLength());
    mb.setHeader(SmppConstants.COMMAND_ID, dsm.getCommandId());
    mb.setHeader(SmppConstants.SME_ACK_NOT_REQUESTED, dsm.isSmeAckNotRequested());
    mb.setHeader(SmppConstants.DATA_CODING, dsm.getDataCoding());
    mb.setHeader(SmppConstants.REPLY_PATH, dsm.isReplyPath());
    mb.setHeader(SmppConstants.SOURCE_ADDR_TON, dsm.getSourceAddrTon());
    mb.setHeader(SmppConstants.SM_DEFAULT_MSG_ID, dsm.getSmDefaultMsgId());
    mb.setHeader(SmppConstants.UDHI, dsm.isUdhi());
    mb.setHeader(SmppConstants.SME_MANUAL_ACKNOWLEDGMENT, dsm.isSmeManualAcknowledgment());
    mb.setHeader(SmppConstants.CONVERSATION_ABORT, dsm.isConversationAbort());
    mb.setHeader(SmppConstants.DEST_ADDRESS, dsm.getDestAddress());
    mb.setHeader(SmppConstants.ESM_CLASS, dsm.getEsmClass());
    mb.setHeader(SmppConstants.COMMAND_ID_AS_HEX, dsm.getCommandIdAsHex());
    mb.setHeader(SmppConstants.SME_DELIVERY_AND_MANUAL_ACK_REQUESTED, dsm.isSmeDeliveryAndManualAckRequested());
    mb.setHeader(SmppConstants.SMSC_DELIVERY_RECEIPT, dsm.isSmscDeliveryReceipt());
    mb.setHeader(SmppConstants.SME_MANUAL_ACK_REQUESTED, dsm.isSmeManualAckRequested());
    mb.setHeader(SmppConstants.PRIORITY_FLAG, dsm.getPriorityFlag());
    mb.setHeader(SmppConstants.DEST_ADDR_TON, dsm.getDestAddrTon());
    mb.setHeader(SmppConstants.COMMAND_STATUS_AS_HEX, dsm.getCommandStatusAsHex());
    mb.setHeader(SmppConstants.SERVICE_TYPE, dsm.getServiceType());
    mb.setHeader(SmppConstants.INTERMEDIATE_DELIVERY_NOTIFICATION, dsm.isIntermedietDeliveryNotification());
    mb.setHeader(SmppConstants.SOURCE_ADDR_NPI, dsm.getSourceAddrNpi());
    mb.setHeader(SmppConstants.REGISTERED_DELIVERY, dsm.getRegisteredDelivery());
    mb.setHeader(SmppConstants.DEST_ADDR_NPI, dsm.getDestAddrNpi());
    mb.setHeader(SmppConstants.COMMAND_STATUS, dsm.getCommandStatus());
    mb.setHeader(SmppConstants.DEFAULT_MESSAGE_TYPE, dsm.isDefaultMessageType());
    mb.setHeader(SmppConstants.PROTOCOL_ID, dsm.getProtocolId());
    mb.setHeader(SmppConstants.SOURCE_ADDR, dsm.getSourceAddr());
    mb.setHeader(SmppConstants.SEQUENCE_NUMBER, dsm.getSequenceNumber());
    mb.setHeader(SmppConstants.SCHEDULE_DELIVERY_TIME, dsm.getScheduleDeliveryTime());
    mb.setHeader(SmppConstants.SME_DELIVERY_ACK_REQUESTED, dsm.isSmeDeliveryAckRequested());
    return mb.build();
}

From source file:org.springframework.integration.x.bus.MessageBusSupport.java

protected final Message<?> serializePayloadIfNecessary(Message<?> message, MediaType to) {
    Object originalPayload = message.getPayload();
    Object originalContentType = message.getHeaders().get(MessageHeaders.CONTENT_TYPE);
    Object contentType = originalContentType;
    if (to.equals(ALL)) {
        return message;
    } else if (to.equals(APPLICATION_OCTET_STREAM)) {
        contentType = resolveContentType(originalPayload);
        Object payload = serializePayloadIfNecessary(originalPayload);
        MessageBuilder<Object> messageBuilder = MessageBuilder.withPayload(payload)
                .copyHeaders(message.getHeaders()).setHeader(MessageHeaders.CONTENT_TYPE, contentType);
        if (originalContentType != null) {
            messageBuilder.setHeader(ORIGINAL_CONTENT_TYPE_HEADER, originalContentType);
        }/*from   w ww .  ja  v  a 2 s. c om*/
        return messageBuilder.build();
    } else {
        throw new IllegalArgumentException("'to' can only be 'ALL' or 'APPLICATION_OCTET_STREAM'");
    }
}