public class UnmarshallingTransformer extends AbstractPayloadTransformer<Object,Object>
Transformer
that delegates to an OXM
Unmarshaller
. Expects the payload to be of type Document
,
String
, File
, Source
or to have an instance of
SourceFactory
that can convert to a Source
. If
alwaysUseSourceFactory is set to true, then the SourceFactory
will be used to create the Source
regardless of payload type.
The Unmarshaller may return a Message, but if the return value is not already a Message instance, a new Message will be created with that return value as its payload.
logger
Constructor and Description |
---|
UnmarshallingTransformer(Unmarshaller unmarshaller) |
Modifier and Type | Method and Description |
---|---|
String |
getComponentType()
Subclasses may implement this method to provide component type information.
|
void |
setAlwaysUseSourceFactory(boolean alwaysUseSourceFactory)
If true always delegate to the
SourceFactory . |
void |
setSourceFactory(SourceFactory sourceFactory)
Provide the SourceFactory to be used.
|
Object |
transformPayload(Object payload) |
doTransform
transform
afterPropertiesSet, getApplicationContextId, getBeanFactory, getComponentName, getConversionService, getIntegrationProperties, getIntegrationProperty, getMessageBuilderFactory, getTaskScheduler, onInit, setApplicationContext, setBeanFactory, setBeanName, setComponentName, setConversionService, setMessageBuilderFactory, setTaskScheduler, toString
public UnmarshallingTransformer(Unmarshaller unmarshaller)
public void setSourceFactory(SourceFactory sourceFactory)
sourceFactory
- The source factory.public void setAlwaysUseSourceFactory(boolean alwaysUseSourceFactory)
SourceFactory
.alwaysUseSourceFactory
- true to always use the source factory.public String getComponentType()
IntegrationObjectSupport
getComponentType
in interface NamedComponent
getComponentType
in class IntegrationObjectSupport
public Object transformPayload(Object payload)
transformPayload
in class AbstractPayloadTransformer<Object,Object>