Example usage for org.springframework.messaging.simp.stomp StompHeaderAccessor addNativeHeaders

List of usage examples for org.springframework.messaging.simp.stomp StompHeaderAccessor addNativeHeaders

Introduction

In this page you can find the example usage for org.springframework.messaging.simp.stomp StompHeaderAccessor addNativeHeaders.

Prototype

public void addNativeHeaders(@Nullable MultiValueMap<String, String> headers) 

Source Link

Usage

From source file:org.springframework.messaging.simp.stomp.DefaultStompSession.java

@Override
public Receiptable send(StompHeaders stompHeaders, Object payload) {
    Assert.hasText(stompHeaders.getDestination(), "Destination header is required");

    String receiptId = checkOrAddReceipt(stompHeaders);
    Receiptable receiptable = new ReceiptHandler(receiptId);

    StompHeaderAccessor accessor = createHeaderAccessor(StompCommand.SEND);
    accessor.addNativeHeaders(stompHeaders);
    Message<byte[]> message = createMessage(accessor, payload);
    execute(message);//from w w  w  .j a v a 2  s  .com

    return receiptable;
}

From source file:org.springframework.messaging.simp.stomp.DefaultStompSession.java

@Override
public Subscription subscribe(StompHeaders stompHeaders, StompFrameHandler handler) {
    Assert.hasText(stompHeaders.getDestination(), "Destination header is required");
    Assert.notNull(handler, "StompFrameHandler must not be null");

    String subscriptionId = stompHeaders.getId();
    if (!StringUtils.hasText(subscriptionId)) {
        subscriptionId = String.valueOf(DefaultStompSession.this.subscriptionIndex.getAndIncrement());
        stompHeaders.setId(subscriptionId);
    }/*from  w  w  w. ja va  2 s  .  co  m*/
    checkOrAddReceipt(stompHeaders);
    Subscription subscription = new DefaultSubscription(stompHeaders, handler);

    StompHeaderAccessor accessor = createHeaderAccessor(StompCommand.SUBSCRIBE);
    accessor.addNativeHeaders(stompHeaders);
    Message<byte[]> message = createMessage(accessor, EMPTY_PAYLOAD);
    execute(message);

    return subscription;
}

From source file:org.springframework.messaging.simp.stomp.DefaultStompSession.java

@Override
public Receiptable acknowledge(String messageId, boolean consumed) {
    StompHeaders stompHeaders = new StompHeaders();
    if ("1.1".equals(this.version)) {
        stompHeaders.setMessageId(messageId);
    } else {/*from  ww w. ja v  a 2 s  . co  m*/
        stompHeaders.setId(messageId);
    }

    String receiptId = checkOrAddReceipt(stompHeaders);
    Receiptable receiptable = new ReceiptHandler(receiptId);

    StompCommand command = (consumed ? StompCommand.ACK : StompCommand.NACK);
    StompHeaderAccessor accessor = createHeaderAccessor(command);
    accessor.addNativeHeaders(stompHeaders);
    Message<byte[]> message = createMessage(accessor, null);
    execute(message);

    return receiptable;
}

From source file:org.springframework.messaging.simp.stomp.DefaultStompSession.java

private void unsubscribe(String id, @Nullable StompHeaders stompHeaders) {
    StompHeaderAccessor accessor = createHeaderAccessor(StompCommand.UNSUBSCRIBE);
    if (stompHeaders != null) {
        accessor.addNativeHeaders(stompHeaders);
    }/*from  w  w w . j a v  a  2 s .c  o  m*/
    accessor.setSubscriptionId(id);
    Message<byte[]> message = createMessage(accessor, EMPTY_PAYLOAD);
    execute(message);
}

From source file:org.springframework.messaging.simp.stomp.DefaultStompSession.java

@Override
public void afterConnected(TcpConnection<byte[]> connection) {
    this.connection = connection;
    if (logger.isDebugEnabled()) {
        logger.debug("Connection established in session id=" + this.sessionId);
    }//w  ww . j ava  2s.c  o m
    StompHeaderAccessor accessor = createHeaderAccessor(StompCommand.CONNECT);
    accessor.addNativeHeaders(this.connectHeaders);
    accessor.setAcceptVersion("1.1,1.2");
    Message<byte[]> message = createMessage(accessor, EMPTY_PAYLOAD);
    execute(message);
}