Class UnmarshallingTransformer
java.lang.Object
org.springframework.integration.context.IntegrationObjectSupport
org.springframework.integration.transformer.AbstractTransformer
org.springframework.integration.transformer.AbstractPayloadTransformer<Object,Object>
org.springframework.integration.xml.transformer.UnmarshallingTransformer
- All Implemented Interfaces:
Aware,BeanFactoryAware,BeanNameAware,InitializingBean,ApplicationContextAware,ExpressionCapable,GenericTransformer<Message<?>,,Message<?>> NamedComponent,Transformer
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 alwaysUseSourceFactory is ignored if payload is
MimeMessage.
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.
- Author:
- Jonas Partner, Artem Bilan, Gary Russell
-
Field Summary
Fields inherited from class org.springframework.integration.context.IntegrationObjectSupport
EXPRESSION_PARSER, logger -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionSubclasses may implement this method to provide component type information.voidsetAlwaysUseSourceFactory(boolean alwaysUseSourceFactory) If true always delegate to theSourceFactory.voidsetSourceFactory(SourceFactory sourceFactory) Provide the SourceFactory to be used.transformPayload(Object payload) Methods inherited from class org.springframework.integration.transformer.AbstractPayloadTransformer
doTransformMethods inherited from class org.springframework.integration.transformer.AbstractTransformer
transformMethods inherited from class org.springframework.integration.context.IntegrationObjectSupport
afterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentName, getConversionService, getExpression, getIntegrationProperties, getIntegrationProperty, getMessageBuilderFactory, getTaskScheduler, isInitialized, onInit, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toString
-
Constructor Details
-
UnmarshallingTransformer
-
-
Method Details
-
setSourceFactory
Provide the SourceFactory to be used. Must not be null.- Parameters:
sourceFactory- The source factory.
-
setAlwaysUseSourceFactory
public void setAlwaysUseSourceFactory(boolean alwaysUseSourceFactory) If true always delegate to theSourceFactory.- Parameters:
alwaysUseSourceFactory- true to always use the source factory.
-
getComponentType
Description copied from class:IntegrationObjectSupportSubclasses may implement this method to provide component type information.- Specified by:
getComponentTypein interfaceNamedComponent- Overrides:
getComponentTypein classIntegrationObjectSupport
-
transformPayload
- Specified by:
transformPayloadin classAbstractPayloadTransformer<Object,Object>
-