org.mule.transport.file
Class FileMessageReceiver
java.lang.Object
org.mule.transport.AbstractTransportMessageHandler
org.mule.transport.AbstractMessageReceiver
org.mule.transport.AbstractPollingMessageReceiver
org.mule.transport.file.FileMessageReceiver
- All Implemented Interfaces:
- Disposable, Initialisable, Lifecycle, LifecycleStateEnabled, Startable, Stoppable, MessageSource, Connectable, MessageReceiver
public class FileMessageReceiver
- extends AbstractPollingMessageReceiver
FileMessageReceiver
is a polling listener that reads files from a
directory.
Methods inherited from class org.mule.transport.AbstractPollingMessageReceiver |
createWork, disableNativeScheduling, doStart, doStop, getBatchSize, getFrequency, getTimeUnit, performPoll, schedule, setFrequency, setTimeUnit, unschedule |
Methods inherited from class org.mule.transport.AbstractMessageReceiver |
applyInboundTransformers, applyResponseTransformers, connectHandler, createExecutionTemplate, createLifecycleManager, createMuleEvent, doStartHandler, getConnectEventId, getConnectionDescription, getEndpoint, getEndpointURI, getFlowConstruct, getReceiverKey, getReplyToHandler, getWorkManager, handleUnacceptedFilter, initialise, processMessage, propagateRootMessageIdProperty, routeEvent, routeMessage, routeMessage, routeMessage, routeMessage, routeMessage, setEndpoint, setListener, setReceiverKey, shouldConsumeInEveryNode, toString, warnIfMuleClientSendUsed |
Methods inherited from class org.mule.transport.AbstractTransportMessageHandler |
activate, connect, createMuleMessage, createMuleMessage, createMuleMessage, createMuleMessageFactory, createNullMuleMessage, disconnect, dispose, disposeAndLogException, getConnectEventId, getConnector, getLifecycleState, initializeMessageFactory, initializeRetryPolicy, isConnected, isDoThreading, isStarted, isStarting, isStopped, isStopping, passivate, setEndpoint, start, stop, validate, validateConnection |
Methods inherited from interface org.mule.api.lifecycle.Startable |
start |
Methods inherited from interface org.mule.api.lifecycle.Stoppable |
stop |
COMPARATOR_CLASS_NAME_PROPERTY
public static final String COMPARATOR_CLASS_NAME_PROPERTY
- See Also:
- Constant Field Values
COMPARATOR_REVERSE_ORDER_PROPERTY
public static final String COMPARATOR_REVERSE_ORDER_PROPERTY
- See Also:
- Constant Field Values
MULE_TRANSPORT_FILE_SINGLEPOLLINSTANCE
public static final String MULE_TRANSPORT_FILE_SINGLEPOLLINSTANCE
- See Also:
- Constant Field Values
FileMessageReceiver
public FileMessageReceiver(Connector connector,
FlowConstruct flowConstruct,
InboundEndpoint endpoint,
String readDir,
String moveDir,
String moveToPattern,
long frequency)
throws CreateException
- Throws:
CreateException
checkMustForceSync
protected void checkMustForceSync()
throws CreateException
- If we will be autodeleting File objects, events must be processed synchronously to avoid a race
- Throws:
CreateException
doInitialise
protected void doInitialise()
throws InitialisationException
- Overrides:
doInitialise
in class AbstractTransportMessageHandler
- Throws:
InitialisationException
doConnect
protected void doConnect()
throws Exception
- Overrides:
doConnect
in class AbstractTransportMessageHandler
- Throws:
Exception
doDisconnect
protected void doDisconnect()
throws Exception
- Overrides:
doDisconnect
in class AbstractTransportMessageHandler
- Throws:
Exception
doDispose
protected void doDispose()
- Overrides:
doDispose
in class AbstractMessageReceiver
poll
public void poll()
- Specified by:
poll
in class AbstractPollingMessageReceiver
pollOnPrimaryInstanceOnly
protected boolean pollOnPrimaryInstanceOnly()
- Description copied from class:
AbstractPollingMessageReceiver
- If this returns true for a transport, polling for that transport takes place only on the primary instance.
- Overrides:
pollOnPrimaryInstanceOnly
in class AbstractPollingMessageReceiver
processFile
public void processFile(File file)
throws MuleException
- Throws:
MuleException
isAgedFile
protected boolean isAgedFile(File file,
long fileAge)
- Indicates whether or not file is older than the specified age
- Parameters:
file
- file to checkfileAge
- target file age in milliseconds
- Returns:
- true if the file is older than the fileAge, false otherwise
createReceiverFileInputStream
protected org.mule.transport.file.ReceiverFileInputStream createReceiverFileInputStream(File sourceFile,
File destinationFile)
throws FileNotFoundException
- Throws:
FileNotFoundException
createReceiverFileInputStream
protected org.mule.transport.file.ReceiverFileInputStream createReceiverFileInputStream(File sourceFile,
File destinationFile,
InputStreamCloseListener closeListener)
throws FileNotFoundException
- Throws:
FileNotFoundException
attemptFileLock
protected boolean attemptFileLock(File sourceFile)
throws MuleException
- Try to acquire a lock on a file and release it immediately. Usually used as a
quick check to see if another process is still holding onto the file, e.g. a
large file (more than 100MB) is still being written to.
- Parameters:
sourceFile
- file to check
- Returns:
true
if the file can be locked
- Throws:
MuleException
basicListFiles
protected void basicListFiles(File currentDirectory,
List<File> discoveredFiles)
rollbackFileMove
protected void rollbackFileMove(File sourceFile,
String destinationFilePath)
throws IOException
- Exception tolerant roll back method
- Throws:
Throwable
IOException
getComparator
protected Comparator<File> getComparator()
throws Exception
- Throws:
Exception
Copyright © 2003-2014 MuleSoft, Inc.. All Rights Reserved.