Spring Integration

org.springframework.integration.json
Class JsonInboundMessageMapper

java.lang.Object
  extended by org.springframework.integration.json.AbstractJsonInboundMessageMapper<JsonInboundMessageMapper.JsonMessageParser<?>>
      extended by org.springframework.integration.json.JsonInboundMessageMapper
All Implemented Interfaces:
InboundMessageMapper<java.lang.String>

public class JsonInboundMessageMapper
extends AbstractJsonInboundMessageMapper<JsonInboundMessageMapper.JsonMessageParser<?>>

InboundMessageMapper implementation that maps incoming JSON messages to a Message with the specified payload type. By default it uses JacksonJsonObjectMapperProvider to get Jackson or Jackson 2 JsonInboundMessageMapper.JsonMessageParser implementation dependently from classpath. Any other JsonInboundMessageMapper.JsonMessageParser implementation may be provided through the appropriate constructor.

Since:
2.0
Author:
Jeremy Grelle, Oleg Zhurakousky, Mark Fisher, Artem Bilan

Nested Class Summary
static interface JsonInboundMessageMapper.JsonMessageParser<P>
           
 
Field Summary
 
Fields inherited from class org.springframework.integration.json.AbstractJsonInboundMessageMapper
DEFAULT_HEADER_TYPES, headerTypes, mapToPayload, MESSAGE_FORMAT_ERROR, payloadType
 
Constructor Summary
JsonInboundMessageMapper(java.lang.Class<?> payloadType)
           
JsonInboundMessageMapper(java.lang.Class<?> payloadType, JsonInboundMessageMapper.JsonMessageParser<?> messageParser)
           
JsonInboundMessageMapper(java.lang.reflect.Type payloadType)
           
JsonInboundMessageMapper(java.lang.reflect.Type payloadType, JsonInboundMessageMapper.JsonMessageParser<?> messageParser)
           
 
Method Summary
 java.util.Map<java.lang.String,java.lang.Class<?>> getHeaderTypes()
           
 java.lang.reflect.Type getPayloadType()
           
 boolean isMapToPayload()
           
protected  java.util.Map<java.lang.String,java.lang.Object> readHeaders(JsonInboundMessageMapper.JsonMessageParser<?> parser, java.lang.String jsonMessage)
           
protected  java.lang.Object readPayload(JsonInboundMessageMapper.JsonMessageParser<?> parser, java.lang.String jsonMessage)
           
 Message<?> toMessage(java.lang.String jsonMessage)
           
 
Methods inherited from class org.springframework.integration.json.AbstractJsonInboundMessageMapper
setHeaderTypes, setMapToPayload
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JsonInboundMessageMapper

public JsonInboundMessageMapper(java.lang.Class<?> payloadType)

JsonInboundMessageMapper

public JsonInboundMessageMapper(java.lang.reflect.Type payloadType)

JsonInboundMessageMapper

public JsonInboundMessageMapper(java.lang.Class<?> payloadType,
                                JsonInboundMessageMapper.JsonMessageParser<?> messageParser)

JsonInboundMessageMapper

public JsonInboundMessageMapper(java.lang.reflect.Type payloadType,
                                JsonInboundMessageMapper.JsonMessageParser<?> messageParser)
Method Detail

isMapToPayload

public boolean isMapToPayload()

getPayloadType

public java.lang.reflect.Type getPayloadType()

getHeaderTypes

public java.util.Map<java.lang.String,java.lang.Class<?>> getHeaderTypes()

toMessage

public Message<?> toMessage(java.lang.String jsonMessage)
                     throws java.lang.Exception
Throws:
java.lang.Exception

readHeaders

protected java.util.Map<java.lang.String,java.lang.Object> readHeaders(JsonInboundMessageMapper.JsonMessageParser<?> parser,
                                                                       java.lang.String jsonMessage)
                                                                throws java.lang.Exception
Specified by:
readHeaders in class AbstractJsonInboundMessageMapper<JsonInboundMessageMapper.JsonMessageParser<?>>
Throws:
java.lang.Exception

readPayload

protected java.lang.Object readPayload(JsonInboundMessageMapper.JsonMessageParser<?> parser,
                                       java.lang.String jsonMessage)
                                throws java.lang.Exception
Specified by:
readPayload in class AbstractJsonInboundMessageMapper<JsonInboundMessageMapper.JsonMessageParser<?>>
Throws:
java.lang.Exception

Spring Integration