Package org.frankframework.filesystem
Class AbstractFileSystemPipe<F,FS extends IBasicFileSystem<F>>
java.lang.Object
org.frankframework.core.TransactionAttributes
org.frankframework.pipes.AbstractPipe
org.frankframework.pipes.FixedForwardPipe
org.frankframework.filesystem.AbstractFileSystemPipe<F,FS>
- All Implemented Interfaces:
FrankElement,HasApplicationContext,HasName,HasPhysicalDestination,HasTransactionAttribute,IConfigurable,IForwardTarget,IPipe,IScopeProvider,IWithParameters,NameAware,EventThrowing,org.springframework.beans.factory.Aware,org.springframework.context.ApplicationContextAware,org.springframework.context.Lifecycle
- Direct Known Subclasses:
LocalFileSystemPipe,Samba1Pipe,Samba2Pipe
@DestinationType(FILE_SYSTEM)
@EnterpriseIntegrationPattern(ENDPOINT)
@Forward(name="fileNotFound",description="the input file was expected to exist, but was not found") @Forward(name="folderNotFound",description="the folder does not exist") @Forward(name="fileAlreadyExists",description="a file that should have been created as new already exists, or if a file already exists when it should have been created as folder") @Forward(name="folderAlreadyExists",description="a folder is to be created that already exists.")
public abstract class AbstractFileSystemPipe<F,FS extends IBasicFileSystem<F>>
extends FixedForwardPipe
implements HasPhysicalDestination
Base class for Pipes that use a
FileSystem.- Author:
- Gerrit van Brakel
- See Also:
- Specific parameters
- action Overrides attribute
action., filename Overrides attributefilename. If not present, the input message is used., destination Destination for actionrenameandmove. Overrides attributedestination., contents Content for actionwriteandappend., inputFolder Folder for actionslist,mkdirandrmdir. This is a sub folder of baseFolder. Overrides attributeinputFolder. If not present, the input message is used., typeFilter Filter for actionlist. SpecifyFILES_ONLY,FOLDERS_ONLYorFILES_AND_FOLDERS. By default, only files are listed.
-
Field Summary
Fields inherited from class org.frankframework.pipes.AbstractPipe
parameterNamesMustBeUniqueFields inherited from class org.frankframework.core.TransactionAttributes
logFields inherited from interface org.frankframework.core.IPipe
LONG_DURATION_MONITORING_EVENT, MESSAGE_SIZE_MONITORING_EVENT, PIPE_EXCEPTION_MONITORING_EVENT -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidaddActions(List<FileSystemActor.FileSystemAction> specificActions) voidChecks for correct configuration of forward.doPipe(Message message, PipeLineSession session) This is where the action takes place.voidvoidsetCharset(String charset) voidsetCreateFolder(boolean createFolder) voidsetDeleteEmptyFolder(boolean deleteEmptyFolder) voidsetDestination(String destination) voidsetExcludeWildcard(String excludeWildcard) voidsetFilename(String filename) protected voidsetFileSystem(FS fileSystem) voidsetInputFolder(String inputFolder) voidsetNumberOfBackups(int numberOfBackups) voidsetOutputFormat(DocumentFormat outputFormat) voidsetOverwrite(boolean overwrite) voidsetRemoveNonEmptyFolder(boolean removeNonEmptyFolder) voidsetRotateDays(int rotateDays) voidsetRotateSize(int rotateSize) voidsetTypeFilter(TypeFilter typeFilter) voidsetWildcard(String wildcard) voidsetWriteLineSeparator(boolean writeLineSeparator) voidstart()Perform necessary action to start the pipe.voidstop()Perform necessary actions to stop thePipe.
For instance, closing JMS connections, DBMS connections etc.Methods inherited from class org.frankframework.pipes.FixedForwardPipe
getParameterValue, setIfParam, setIfValue, setOnlyIfSessionKey, setOnlyIfValue, setSkipOnEmptyInput, setUnlessSessionKey, setUnlessValue, skipPipeMethods inherited from class org.frankframework.pipes.AbstractPipe
addForward, addParameter, consumesSessionVariable, createBean, findForward, getAdapter, getEventSourceName, getForwards, getParameterList, hasRegisteredForward, isRunning, registerEvent, setApplicationContext, setChompCharSize, setDurationThreshold, setElementToMove, setElementToMoveChain, setElementToMoveSessionKey, setEmptyInputReplacement, setGetInputFromFixedValue, setGetInputFromSessionKey, setHideRegex, setLocker, setLogIntermediaryResults, setMaxThreads, setName, setPreserveInput, setRemoveCompactMsgNamespaces, setRestoreMovedElements, setSecLogSessionKeys, setSizeStatistics, setStoreResultInSessionKey, setWriteToSecLog, sizeStatisticsEnabled, throwEventMethods inherited from class org.frankframework.core.TransactionAttributes
configureTransactionAttributes, isTransacted, isTransacted, setTransacted, setTransactionTimeoutMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.frankframework.core.FrankElement
addConfigWarningMethods inherited from interface org.frankframework.core.HasApplicationContext
getApplicationContext, getConfigurationClassLoaderMethods inherited from interface org.frankframework.core.HasTransactionAttribute
getTransactionAttribute, getTransactionTimeout, getTxDef, setTransactionAttributeMethods inherited from interface org.frankframework.core.IForwardTarget
getNameMethods inherited from interface org.frankframework.core.IPipe
getChompCharSize, getDurationThreshold, getElementToMove, getElementToMoveChain, getElementToMoveSessionKey, getEmptyInputReplacement, getGetInputFromFixedValue, getGetInputFromSessionKey, getHideRegex, getLocker, getLogIntermediaryResults, getMaxThreads, getSecLogSessionKeys, getStoreResultInSessionKey, isPreserveInput, isRemoveCompactMsgNamespaces, isRestoreMovedElements, isWriteToSecLog, setPipeLine, throwEvent
-
Constructor Details
-
AbstractFileSystemPipe
public AbstractFileSystemPipe()
-
-
Method Details
-
configure
Description copied from class:FixedForwardPipeChecks for correct configuration of forward.- Specified by:
configurein interfaceIConfigurable- Overrides:
configurein classFixedForwardPipe- Throws:
ConfigurationException- in case it was not able to configure the component.
-
start
public void start()Description copied from interface:IPipePerform necessary action to start the pipe. This method is executed after theIConfigurable.configure()method, for each start and stop command of the adapter.- Specified by:
startin interfaceIPipe- Specified by:
startin interfaceorg.springframework.context.Lifecycle- Overrides:
startin classAbstractPipe
-
stop
public void stop()Description copied from interface:IPipePerform necessary actions to stop thePipe.
For instance, closing JMS connections, DBMS connections etc.- Specified by:
stopin interfaceIPipe- Specified by:
stopin interfaceorg.springframework.context.Lifecycle- Overrides:
stopin classAbstractPipe
-
doPipe
@Nullable public PipeRunResult doPipe(@Nonnull Message message, @Nonnull PipeLineSession session) throws PipeRunException Description copied from interface:IPipeThis is where the action takes place. Pipes may only throw a PipeRunException, to be handled by the caller of this object. Implementations must either consume the message, or pass it on to the next Pipe in the PipeRunResult.- Specified by:
doPipein interfaceIPipe- Throws:
PipeRunException
-
getPhysicalDestinationName
- Specified by:
getPhysicalDestinationNamein interfaceHasPhysicalDestination
-
setFileSystem
-
addActions
-
setAction
-
getAction
-
setFilename
-
setDestination
-
setInputFolder
-
setCreateFolder
-
setOverwrite
-
setRotateDays
-
setRotateSize
-
setNumberOfBackups
-
setWildcard
-
setExcludeWildcard
-
setRemoveNonEmptyFolder
-
setWriteLineSeparator
-
setCharset
-
setDeleteEmptyFolder
-
setOutputFormat
-
setTypeFilter
-