Example usage for org.springframework.messaging.simp.stomp StompFrameHandler handleFrame

List of usage examples for org.springframework.messaging.simp.stomp StompFrameHandler handleFrame

Introduction

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

Prototype

void handleFrame(StompHeaders headers, @Nullable Object payload);

Source Link

Document

Handle a STOMP frame with the payload converted to the target type returned from #getPayloadType(StompHeaders) .

Usage

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

private void invokeHandler(StompFrameHandler handler, Message<byte[]> message, StompHeaders stompHeaders) {
    if (message.getPayload().length == 0) {
        handler.handleFrame(stompHeaders, null);
        return;// w w w.  j  a  va2 s .  c o  m
    }
    Type payloadType = handler.getPayloadType(stompHeaders);
    Class<?> resolvedType = ResolvableType.forType(payloadType).resolve();
    if (resolvedType == null) {
        throw new MessageConversionException("Unresolvable payload type [" + payloadType
                + "] from handler type [" + handler.getClass() + "]");
    }
    Object object = getMessageConverter().fromMessage(message, resolvedType);
    if (object == null) {
        throw new MessageConversionException("No suitable converter for payload type [" + payloadType
                + "] from handler type [" + handler.getClass() + "]");
    }
    handler.handleFrame(stompHeaders, object);
}