org.springframework.integration.file
Class FileWritingMessageHandler
java.lang.Object
org.springframework.integration.context.IntegrationObjectSupport
org.springframework.integration.handler.AbstractMessageHandler
org.springframework.integration.handler.AbstractReplyProducingMessageHandler
org.springframework.integration.file.FileWritingMessageHandler
- All Implemented Interfaces:
- org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.InitializingBean, org.springframework.core.Ordered, org.springframework.integration.context.NamedComponent, org.springframework.integration.context.Orderable, org.springframework.integration.core.MessageHandler, org.springframework.integration.core.MessageProducer, org.springframework.integration.history.TrackableComponent
public class FileWritingMessageHandler
- extends org.springframework.integration.handler.AbstractReplyProducingMessageHandler
A MessageHandler implementation that writes the Message payload to a
file. If the payload is a File object, it will copy the File to the specified
destination directory. If the payload is a byte array or String, it will write
it directly. Otherwise, the payload type is unsupported, and an Exception
will be thrown.
If the 'deleteSourceFiles' flag is set to true, the original Files will be
deleted. The default value for that flag is false. See the
setDeleteSourceFiles(boolean) method javadoc for more information.
Other transformers may be useful to precede this handler. For example, any
Serializable object payload can be converted into a byte array by the
PayloadSerializingTransformer.
Likewise, any Object can be converted to a String based on its
toString() method by the
ObjectToStringTransformer.
| Fields inherited from interface org.springframework.core.Ordered |
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE |
| Methods inherited from class org.springframework.integration.handler.AbstractReplyProducingMessageHandler |
getMessagingTemplate, handleMessageInternal, setChannelResolver, setOutputChannel, setRequiresReply, setSendTimeout, shouldCopyRequestHeaders |
| Methods inherited from class org.springframework.integration.handler.AbstractMessageHandler |
getComponentType, getOrder, handleMessage, setOrder, setShouldTrack |
| Methods inherited from class org.springframework.integration.context.IntegrationObjectSupport |
afterPropertiesSet, getBeanFactory, getComponentName, getConversionService, getTaskScheduler, setBeanFactory, setBeanName, setComponentName, setConversionService, setTaskScheduler, toString |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface org.springframework.integration.context.NamedComponent |
getComponentName |
FileWritingMessageHandler
public FileWritingMessageHandler(java.io.File destinationDirectory)
setAutoCreateDirectory
public void setAutoCreateDirectory(boolean autoCreateDirectory)
- Specify whether to create the destination directory automatically if it
does not yet exist upon initialization. By default, this value is
true. If set to false and the
destination directory does not exist, an Exception will be thrown upon
initialization.
setTemporaryFileSuffix
public void setTemporaryFileSuffix(java.lang.String temporaryFileSuffix)
getTemporaryFileSuffix
protected java.lang.String getTemporaryFileSuffix()
setFileNameGenerator
public void setFileNameGenerator(FileNameGenerator fileNameGenerator)
- Provide the
FileNameGenerator strategy to use when generating
the destination file's name.
setDeleteSourceFiles
public void setDeleteSourceFiles(boolean deleteSourceFiles)
- Specify whether to delete source Files after writing to the destination
directory. The default is false. When set to true, it
will only have an effect if the inbound Message has a File payload or
a
FileHeaders.ORIGINAL_FILE header value containing either a
File instance or a String representing the original file path.
setCharset
public void setCharset(java.lang.String charset)
- Set the charset name to use when writing a File from a String-based
Message payload.
onInit
public final void onInit()
- Overrides:
onInit in class org.springframework.integration.handler.AbstractReplyProducingMessageHandler
handleRequestMessage
protected java.lang.Object handleRequestMessage(org.springframework.integration.Message<?> requestMessage)
- Specified by:
handleRequestMessage in class org.springframework.integration.handler.AbstractReplyProducingMessageHandler