Class LargeFsConsumer
- java.lang.Object
-
- All Implemented Interfaces:
AdaptrisComponent,AdaptrisMessageConsumer,AdaptrisMessageWorker,ComponentLifecycle,ComponentLifecycleExtension,MessageEventGenerator,StateManagedComponent
@ComponentProfile(summary="Pickup messages from the filesystem with large message support", tag="consumer,fs,filesystem", metadata={"originalname","fsFileSize","lastmodified","fsConsumeDir","_interlokMessageConsumedFrom","fsParentDir"}, recommended=NullConnection.class) public class LargeFsConsumer extends FsConsumerFile system implementation of
AdaptrisMessageConsumerwith large message support.- If a
filebased url is used. e.g. file:///c:/path/to/my/directory or file:////path/to/my/directory then the patch is considered to be fully qualified - If just a path is returned, then it is considered to be relative to the current working directory. e.g. if /opt/fred is used, and the adapter is installed to /opt/adapter, then the fully qualified name is /opt/adapter/opt/fred.
On windows based platforms, you should always use a file based url.
Additionally the behaviour of this consumer is subtly different from the standard
FsConsumer:- Encoding is supported if you use a
FileBackedMimeEncoder. - The default AdaptrisMessageFactory implementation is
FileBackedMessageFactory - If, at runtime, the MessageFactory implementation is not FileBackedMessageFactory, then behaviour changes to be identical to
to the existing
FsConsumerand uses the configured FsWorker
In the adapter configuration file this class is aliased as large-fs-consumer which is the preferred alternative to the fully qualified classname when building your configuration.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.adaptris.core.AdaptrisPollingConsumer
AdaptrisPollingConsumer.LockOperator
-
-
Field Summary
-
Fields inherited from class com.adaptris.core.fs.FsConsumerImpl
fileFilter, fsWorker
-
Fields inherited from class com.adaptris.core.AdaptrisMessageWorkerImp
log
-
-
Constructor Summary
Constructors Constructor Description LargeFsConsumer()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()Closes the component.voidinit()Initialises the component.protected intprocessFile(java.io.File originalFile)Attempt to process this file which might be a directory.voidstart()Starts the component.voidstop()Stop the component-
Methods inherited from class com.adaptris.core.fs.FsConsumer
getResetWipFiles, getWipSuffix, renameFile, resetWipFiles, setResetWipFiles, setWipSuffix
-
Methods inherited from class com.adaptris.core.fs.FsConsumerImpl
addStandardMetadata, baseDirUrl, checkModified, consumeLocationKey, createAdaptrisMessage, filterExpression, getBaseDirectoryUrl, getCreateDirs, getFileFilterImp, getFileSorter, getFilterExpression, getLogAllExceptions, getQuietInterval, isFileAccessible, logAllExceptions, prepareConsumer, processMessages, setBaseDirectoryUrl, setCreateDirs, setFileFilterImp, setFileSorter, setFilterExpression, setLogAllExceptions, setQuietInterval, shouldCreateDirs, verifyDirectory, withBaseDirectoryUrl, withFilterExpression
-
Methods inherited from class com.adaptris.core.AdaptrisPollingConsumer
continueProcessingMessages, getMaxMessagesPerPoll, getPoller, getReacquireLockBetweenMessages, prepare, releaseLock, setMaxMessagesPerPoll, setPoller, setReacquireLockBetweenMessages
-
Methods inherited from class com.adaptris.core.AdaptrisMessageConsumerImp
changeState, newThreadName, registerAdaptrisMessageListener, renameThread, requestClose, requestInit, requestStart, requestStop, retrieveAdaptrisMessageListener, retrieveComponentState
-
Methods inherited from class com.adaptris.core.AdaptrisMessageWorkerImp
createName, createQualifier, decode, encode, getEncoder, getIsTrackingEndpoint, getMessageFactory, getUniqueId, handleConnectionException, isTrackingEndpoint, registerConnection, registerEncoderMessageFactory, retrieveConnection, setEncoder, setIsTrackingEndpoint, setMessageFactory, setUniqueId, withMessageFactory, withUniqueID
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.adaptris.core.AdaptrisComponent
getUniqueId
-
Methods inherited from interface com.adaptris.core.AdaptrisMessageWorker
decode, encode, getEncoder, getMessageFactory, handleConnectionException, registerConnection, retrieveConnection, setEncoder, setMessageFactory
-
Methods inherited from interface com.adaptris.core.MessageEventGenerator
createName, createQualifier, isTrackingEndpoint
-
-
-
-
Method Detail
-
init
public void init() throws CoreExceptionDescription copied from interface:ComponentLifecycleInitialises the component.Component initialisation includes config verification, creation of connections etc.
- Specified by:
initin interfaceComponentLifecycle- Overrides:
initin classFsConsumer- Throws:
CoreException- wrapping any underlyingExceptions- See Also:
ComponentLifecycle.init()
-
start
public void start() throws CoreExceptionDescription copied from interface:ComponentLifecycleStarts the component.Once a component is started it should be ready to process messages. In the case of
AdaptrisMessageConsumer, calling start will begin message delivery.- Specified by:
startin interfaceComponentLifecycle- Overrides:
startin classAdaptrisPollingConsumer- Throws:
CoreException- wrapping any underlyingExceptions- See Also:
ComponentLifecycle.start()
-
stop
public void stop()
Description copied from interface:ComponentLifecycleStop the componentA stopped component is not expected to be ready to process messages. In the case of
AdaptrisMessageConsumer, calling stop will pause message delivery. Throwing aRuntimeExceptionmay cause unintended consequences- Specified by:
stopin interfaceComponentLifecycle- Overrides:
stopin classAdaptrisPollingConsumer- See Also:
ComponentLifecycle.stop()
-
close
public void close()
Description copied from interface:ComponentLifecycleCloses the component.A closed component should release any connections it uses, etc. and clean up completely. Throwing a
RuntimeExceptionmay cause unintended consequences- Specified by:
closein interfaceComponentLifecycle- Overrides:
closein classAdaptrisPollingConsumer- See Also:
ComponentLifecycle.close()
-
processFile
protected int processFile(java.io.File originalFile) throws CoreExceptionDescription copied from class:FsConsumerImplAttempt to process this file which might be a directory.- Overrides:
processFilein classFsConsumer- Parameters:
originalFile- the File- Returns:
- the number of files processed.
- Throws:
CoreException- wrapping any other Exception.
-
-