org.mule.module.json.transformers
Class JsonToObject

java.lang.Object
  extended by org.mule.transformer.AbstractTransformer
      extended by org.mule.transformer.AbstractMessageTransformer
          extended by org.mule.module.json.transformers.AbstractJsonTransformer
              extended by org.mule.module.json.transformers.JsonToObject
All Implemented Interfaces:
MuleContextAware, MuleContextNotificationListener<MuleContextNotification>, ServerNotificationListener<MuleContextNotification>, Disposable, Initialisable, NamedObject, MessageProcessor, DiscoverableTransformer, MessageTransformer, Transformer, EndpointAware

public class JsonToObject
extends AbstractJsonTransformer

A transformer that will convert a JSON encoded object graph to a java object. The object type is determined by the 'returnClass' attribute. Note that this transformers supports Arrays and Lists. For example, to convert a JSON string to an array of org.foo.Person, set the the returnClass=[Lorg.foo.Person;.

The JSON engine can be configured using the jsonConfig attribute. This is an object reference to an instance of: net.sf.json.JsonConfig. This can be created as a spring bean.


Field Summary
 
Fields inherited from class org.mule.module.json.transformers.AbstractJsonTransformer
weighting
 
Fields inherited from class org.mule.transformer.AbstractTransformer
encoding, endpoint, logger, mimeType, MULE_MESSAGE_DATA_TYPE, muleContext, name, returnType, sourceTypes
 
Fields inherited from interface org.mule.api.transformer.DiscoverableTransformer
DEFAULT_PRIORITY_WEIGHTING, MAX_PRIORITY_WEIGHTING, MIN_PRIORITY_WEIGHTING
 
Fields inherited from interface org.mule.api.lifecycle.Initialisable
PHASE_NAME
 
Fields inherited from interface org.mule.api.lifecycle.Disposable
PHASE_NAME
 
Constructor Summary
JsonToObject()
           
 
Method Summary
 java.util.Map<java.lang.Class<?>,java.lang.Class<?>> getDeserializationMixins()
           
 void initialise()
          Template method where deriving classes can do any initialisation after the properties have been set on this transformer
 void setDeserializationMixins(java.util.Map<java.lang.Class<?>,java.lang.Class<?>> deserializationMixins)
           
 java.lang.Object transformMessage(MuleMessage message, java.lang.String outputEncoding)
          Transform the message
 
Methods inherited from class org.mule.module.json.transformers.AbstractJsonTransformer
getMapper, getMixins, getPriorityWeighting, setMapper, setMixins, setPriorityWeighting
 
Methods inherited from class org.mule.transformer.AbstractMessageTransformer
checkReturnClass, doTransform, isSourceDataTypeSupported, transform, transform, transform
 
Methods inherited from class org.mule.transformer.AbstractTransformer
checkReturnClass, dispose, generateTransformerName, getEncoding, getEncoding, getEndpoint, getMimeType, getName, getReturnClass, getReturnDataType, getSourceDataTypes, getSourceTypes, isAcceptNull, isAllowNullReturn, isConsumed, isIgnoreBadInput, isSourceDataTypeSupported, isSourceTypeSupported, isSourceTypeSupported, onNotification, process, registerSourceType, registerSourceType, setAllowNullReturn, setEncoding, setEndpoint, setIgnoreBadInput, setMimeType, setMuleContext, setName, setReturnClass, setReturnDataType, toString, transform, unregisterSourceType, unregisterSourceType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.mule.api.transformer.Transformer
getEncoding, getEndpoint, getMimeType, getReturnClass, getReturnDataType, getSourceDataTypes, getSourceTypes, isAcceptNull, isIgnoreBadInput, isSourceDataTypeSupported, isSourceTypeSupported, setReturnClass, setReturnDataType, transform
 
Methods inherited from interface org.mule.api.processor.MessageProcessor
process
 
Methods inherited from interface org.mule.api.lifecycle.Disposable
dispose
 
Methods inherited from interface org.mule.api.NamedObject
getName, setName
 
Methods inherited from interface org.mule.api.context.MuleContextAware
setMuleContext
 
Methods inherited from interface org.mule.endpoint.EndpointAware
setEndpoint
 

Constructor Detail

JsonToObject

public JsonToObject()
Method Detail

initialise

public void initialise()
                throws InitialisationException
Description copied from class: AbstractTransformer
Template method where deriving classes can do any initialisation after the properties have been set on this transformer

Specified by:
initialise in interface Initialisable
Overrides:
initialise in class AbstractJsonTransformer
Throws:
InitialisationException - if a fatal error occurs causing the Mule instance to shutdown
RecoverableException - if an error occurs that can be recovered from

transformMessage

public java.lang.Object transformMessage(MuleMessage message,
                                         java.lang.String outputEncoding)
                                  throws TransformerException
Description copied from class: AbstractMessageTransformer
Transform the message

Specified by:
transformMessage in class AbstractMessageTransformer
Returns:
Throws:
TransformerException

getDeserializationMixins

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

setDeserializationMixins

public void setDeserializationMixins(java.util.Map<java.lang.Class<?>,java.lang.Class<?>> deserializationMixins)


Copyright © 2003-2010 MuleSoft, Inc.. All Rights Reserved.