org.springframework.integration.xml.transformer
Class UnmarshallingTransformer
java.lang.Object
org.springframework.integration.context.IntegrationObjectSupport
org.springframework.integration.transformer.AbstractTransformer
org.springframework.integration.transformer.AbstractPayloadTransformer<java.lang.Object,java.lang.Object>
org.springframework.integration.xml.transformer.UnmarshallingTransformer
- All Implemented Interfaces:
- BeanFactoryAware, BeanNameAware, InitializingBean, NamedComponent, Transformer
public class UnmarshallingTransformer
- extends AbstractPayloadTransformer<java.lang.Object,java.lang.Object>
An implementation of 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.
Methods inherited from class org.springframework.integration.context.IntegrationObjectSupport |
afterPropertiesSet, getBeanFactory, getComponentName, getComponentType, getConversionService, getTaskScheduler, onInit, setBeanFactory, setBeanName, setComponentName, setConversionService, setTaskScheduler, toString |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
UnmarshallingTransformer
public UnmarshallingTransformer(Unmarshaller unmarshaller)
setSourceFactory
public void setSourceFactory(SourceFactory sourceFactory)
- Provide the SourceFactory to be used. Must not be null.
setAlwaysUseSourceFactory
public void setAlwaysUseSourceFactory(boolean alwaysUseSourceFactory)
- If true always delegate to the
SourceFactory
.
transformPayload
public java.lang.Object transformPayload(java.lang.Object payload)
- Specified by:
transformPayload
in class AbstractPayloadTransformer<java.lang.Object,java.lang.Object>