Package org.frankframework.compression
Class ZipIteratorPipe
java.lang.Object
- All Implemented Interfaces:
HasSender
,HasTransactionAttribute
,IConfigurable
,IConfigurationAware
,IForwardTarget
,INamedObject
,IPipe
,IScopeProvider
,IWithParameters
,EventThrowing
,HasStatistics
,org.springframework.beans.factory.Aware
,org.springframework.context.ApplicationContextAware
Sends a message to a Sender for each entry of its input, that must be an ZipInputStream. The input of the pipe must be one of:
- String refering to a filename
- File
- InputStream
- Since:
- 4.9.10
- Author:
- Gerrit van Brakel
-
Nested Class Summary
Nested classes/interfaces inherited from class org.frankframework.pipes.IteratingPipe
IteratingPipe.ItemCallback, IteratingPipe.StopReason
Nested classes/interfaces inherited from class org.frankframework.pipes.MessageSendingPipe
MessageSendingPipe.LinkMethod
-
Field Summary
Fields inherited from class org.frankframework.pipes.IteratingPipe
MAX_ITEMS_REACHED_FORWARD, msgTransformerPool, STOP_CONDITION_MET_FORWARD
Fields inherited from class org.frankframework.pipes.MessageSendingPipe
configurationMetrics, INPUT_VALIDATOR_NAME_PREFIX, INPUT_VALIDATOR_NAME_SUFFIX, INPUT_WRAPPER_NAME_PREFIX, INPUT_WRAPPER_NAME_SUFFIX, MAX_RETRY_INTERVAL, MESSAGE_LOG_NAME_PREFIX, MESSAGE_LOG_NAME_SUFFIX, MIN_RETRY_INTERVAL, msgLog, OUTPUT_VALIDATOR_NAME_PREFIX, OUTPUT_VALIDATOR_NAME_SUFFIX, OUTPUT_WRAPPER_NAME_PREFIX, OUTPUT_WRAPPER_NAME_SUFFIX, PIPE_CLEAR_TIMEOUT_MONITOR_EVENT, PIPE_EXCEPTION_MONITOR_EVENT, PIPE_TIMEOUT_MONITOR_EVENT
Fields inherited from class org.frankframework.pipes.AbstractPipe
parameterNamesMustBeUnique
Fields inherited from class org.frankframework.core.TransactionAttributes
log
Fields inherited from interface org.frankframework.core.IPipe
LONG_DURATION_MONITORING_EVENT, MESSAGE_SIZE_MONITORING_EVENT, PIPE_EXCEPTION_MONITORING_EVENT
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
checks for correct configuration of forwardprotected IDataIterator<String>
getIterator
(Message input, PipeLineSession session, Map<String, Object> threadContext) protected ZipInputStream
getZipInputStream
(Message input, PipeLineSession session, Map<String, Object> threadContext) boolean
boolean
boolean
void
setCharset
(String string) Charset used when reading the contents of the entry (only used if streamingContents=false)void
setCloseInputstreamOnExit
(boolean b) If set tofalse
, the inputstream is not closed after it has been usedvoid
setContentsSessionKey
(String string) Session key used to store contents of each zip entryvoid
setProcessFile
(boolean b) Deprecated, for removal: This API element is subject to removal in a future version.void
setStreamingContents
(boolean b) If set tofalse
, a string containing the contents of the entry is placed under the session key, instead of the inputstream to the contentsMethods inherited from class org.frankframework.pipes.IteratingPipe
createItemCallBack, getBlockSize, getItem, getItemNoSessionKey, getMaxChildThreads, getMaxItems, getNamespaceDefs, getOutputType, getStatisticsKeeper, getStopConditionTp, getStopConditionXPathExpression, getStyleSheetName, getTaskExecutor, getXpathExpression, isAddInputToResult, isCloseIteratorOnExit, isCollectResults, isIgnoreExceptions, isOmitXmlDeclaration, isParallel, isRemoveDuplicates, isRemoveXmlDeclarationInResults, itemToMessage, iterateOverInput, sendMessage, setAddInputToResult, setBlockSize, setCloseIteratorOnExit, setCollectResults, setIgnoreExceptions, setItemNoSessionKey, setMaxChildThreads, setMaxItems, setNamespaceDefs, setOmitXmlDeclaration, setOutputType, setParallel, setRemoveDuplicates, setRemoveXmlDeclarationInResults, setSender, setStopConditionXPathExpression, setStyleSheetName, setTaskExecutor, setXpathExpression
Methods inherited from class org.frankframework.pipes.MessageSendingPipe
consumesSessionVariable, doLogToMessageLog, doPipe, getCheckRootTag, getConfigurationMetrics, getExceptionOnResult, getHideMethod, getInputValidator, getInputWrapper, getLinkMethod, getMaxRetries, getMessageLog, getOutputValidator, getOutputWrapper, getPresumedTimeOutInterval, getResultOnTimeOut, getRetryMaxInterval, getRetryMinInterval, getRetryNamespaceDefs, getRetryXPath, getSender, getStubFilename, getTimeoutOnResult, increaseRetryIntervalAndWait, isCheckXmlWellFormed, postSendAction, preserve, propagateName, sendMessageWithRetries, setCheckRootTag, setCheckXmlWellFormed, setConfigurationMetrics, setExceptionOnResult, setHideMethod, setHideRegex, setInputValidator, setInputWrapper, setLinkMethod, setMaxRetries, setMessageLog, setName, setOutputValidator, setOutputWrapper, setPipeProcessor, setPresumedTimeOutInterval, setResultOnTimeOut, setRetryMaxInterval, setRetryMinInterval, setRetryNamespaceDefs, setRetryXPath, setStubFilename, setTimeoutOnResult, setTimeOutOnResult, sizeStatisticsEnabled, start, stop, storeMessage
Methods inherited from class org.frankframework.pipes.FixedForwardPipe
getIfParam, getIfValue, getOnlyIfSessionKey, getOnlyIfValue, getParameterValue, getSuccessForward, getUnlessSessionKey, getUnlessValue, isSkipOnEmptyInput, setIfParam, setIfValue, setOnlyIfSessionKey, setOnlyIfValue, setSkipOnEmptyInput, setUnlessSessionKey, setUnlessValue, skipPipe
Methods inherited from class org.frankframework.pipes.AbstractPipe
addForward, addParameter, createBean, findForward, getAdapter, getApplicationContext, getChompCharSize, getConfigurationClassLoader, getDurationThreshold, getElementToMove, getElementToMoveChain, getElementToMoveSessionKey, getEmptyInputReplacement, getEventSourceName, getForwards, getGetInputFromFixedValue, getGetInputFromSessionKey, getHideRegex, getLocker, getLogIntermediaryResults, getMaxThreads, getName, getParameterList, getPipeLine, getSecLogSessionKeys, getStoreResultInSessionKey, hasRegisteredForward, isPreserveInput, isRemoveCompactMsgNamespaces, isRestoreMovedElements, isWriteToSecLog, registerEvent, setApplicationContext, setChompCharSize, setDurationThreshold, setElementToMove, setElementToMoveChain, setElementToMoveSessionKey, setEmptyInputReplacement, setEventPublisher, setGetInputFromFixedValue, setGetInputFromSessionKey, setLocker, setLogIntermediaryResults, setMaxThreads, setPipeLine, setPreserveInput, setRemoveCompactMsgNamespaces, setRestoreMovedElements, setSecLogSessionKeys, setSizeStatistics, setStoreResultInSessionKey, setWriteToSecLog, throwEvent
Methods inherited from class org.frankframework.core.TransactionAttributes
configureTransactionAttributes, getTransactionAttribute, getTransactionTimeout, getTxDef, isTransacted, isTransacted, setTransacted, setTransactionAttribute, setTransactionTimeout
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.frankframework.core.INamedObject
getName
Methods inherited from interface org.frankframework.core.IPipe
throwEvent
-
Constructor Details
-
ZipIteratorPipe
public ZipIteratorPipe()
-
-
Method Details
-
configure
Description copied from class:FixedForwardPipe
checks for correct configuration of forward- Specified by:
configure
in interfaceIConfigurable
- Specified by:
configure
in interfaceIPipe
- Overrides:
configure
in classIteratingPipe<String>
- Throws:
ConfigurationException
-
getZipInputStream
protected ZipInputStream getZipInputStream(Message input, PipeLineSession session, Map<String, Object> threadContext) throws SenderException- Throws:
SenderException
-
getIterator
protected IDataIterator<String> getIterator(Message input, PipeLineSession session, Map<String, Object> threadContext) throws SenderException- Overrides:
getIterator
in classIteratingPipe<String>
- Throws:
SenderException
-
setContentsSessionKey
Session key used to store contents of each zip entry- Default value
- zipdata
-
setStreamingContents
public void setStreamingContents(boolean b) If set tofalse
, a string containing the contents of the entry is placed under the session key, instead of the inputstream to the contents- Default value
- true
-
setCloseInputstreamOnExit
public void setCloseInputstreamOnExit(boolean b) If set tofalse
, the inputstream is not closed after it has been used- Default value
- true
-
setCharset
Charset used when reading the contents of the entry (only used if streamingContents=false)- Default value
- utf-8
-
setProcessFile
@Deprecated(forRemoval=true, since="7.8.0") @ConfigurationWarning("Please add a LocalFileSystemPipe with action=read in front of this pipe instead") public void setProcessFile(boolean b) Deprecated, for removal: This API element is subject to removal in a future version.If settrue
, each entry is assumed to be the name of a file to be compressed. Otherwise, the input itself is compressed.- Default value
- false
-
getContentsSessionKey
-
isStreamingContents
public boolean isStreamingContents() -
isCloseInputstreamOnExit
public boolean isCloseInputstreamOnExit() -
getCharset
-
isProcessFile
public boolean isProcessFile()
-