Package org.frankframework.jdbc
Class JdbcIteratingPipeBase
java.lang.Object
org.frankframework.core.TransactionAttributes
org.frankframework.pipes.AbstractPipe
org.frankframework.pipes.FixedForwardPipe
org.frankframework.pipes.MessageSendingPipe
org.frankframework.pipes.IteratingPipe<String>
org.frankframework.pipes.StringIteratorPipe
org.frankframework.jdbc.JdbcIteratingPipeBase
- All Implemented Interfaces:
HasPhysicalDestination
,HasSender
,HasTransactionAttribute
,IConfigurable
,IConfigurationAware
,IForwardTarget
,INamedObject
,IPipe
,IScopeProvider
,IWithParameters
,EventThrowing
,HasStatistics
,org.springframework.beans.factory.Aware
,org.springframework.context.ApplicationContextAware
- Direct Known Subclasses:
LobLineIteratingPipeBase
,ResultSetIteratingPipe
public abstract class JdbcIteratingPipeBase
extends StringIteratorPipe
implements HasPhysicalDestination
Base class for JDBC iterating pipes.
- Since:
- 4.7
- 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
Add a parameter to the list of parametersvoid
checks for correct configuration of forwardprotected abstract IDataIterator<String>
getIterator
(IDbmsSupport dbmsSupport, Connection conn, ResultSet rs) protected IDataIterator<String>
getIterator
(Message message, PipeLineSession session, Map<String, Object> threadContext) void
setAvoidLocking
(boolean avoidLocking) void
setBlobCharset
(String charset) Deprecated, for removal: This API element is subject to removal in a future version.void
setBlobsCompressed
(boolean compressed) void
setBlobSmartGet
(boolean isSmartBlob) void
setDatasourceName
(String datasourceName) void
setJmsRealm
(String jmsRealmName) Deprecated, for removal: This API element is subject to removal in a future version.void
setLockRows
(boolean b) void
setLockWait
(int i) void
The SQL query text to be excecuted each time sendMessage() is called.void
setSqlDialect
(String string) void
setTrimSpaces
(boolean b) void
void
start()
Perform necessary action to start the pipe.void
stop()
Perform necessary actions to stop thePipe
.
For instance, closing JMS connections, DBMS connections etc.Methods inherited from class org.frankframework.pipes.StringIteratorPipe
createItemCallBack, getBlockPrefix, getBlockSuffix, getEndPosition, getKey, getLinePrefix, getLineSuffix, getStartPosition, getStringIteratorPipeBlockSize, isCombineBlocks, isEscapeXml, setBlockPrefix, setBlockSize, setBlockSuffix, setCombineBlocks, setEndPosition, setEscapeXml, setLinePrefix, setLineSuffix, setStartPosition
Methods inherited from class org.frankframework.pipes.IteratingPipe
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, 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, 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, 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
-
Field Details
-
querySender
-
-
Constructor Details
-
JdbcIteratingPipeBase
public JdbcIteratingPipeBase()
-
-
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 classStringIteratorPipe
- Throws:
ConfigurationException
-
start
Description copied from interface:IPipe
Perform necessary action to start the pipe. This method is executed after theIPipe.configure()
method, for each start and stop command of the adapter.- Specified by:
start
in interfaceIPipe
- Overrides:
start
in classMessageSendingPipe
- Throws:
PipeStartException
-
stop
public void stop()Description copied from interface:IPipe
Perform necessary actions to stop thePipe
.
For instance, closing JMS connections, DBMS connections etc.- Specified by:
stop
in interfaceIPipe
- Overrides:
stop
in classMessageSendingPipe
-
getIterator
protected abstract IDataIterator<String> getIterator(IDbmsSupport dbmsSupport, Connection conn, ResultSet rs) throws SenderException - Throws:
SenderException
-
getIterator
protected IDataIterator<String> getIterator(Message message, PipeLineSession session, Map<String, Object> threadContext) throws SenderException- Overrides:
getIterator
in classIteratingPipe<String>
- Throws:
SenderException
-
addParameter
Description copied from class:AbstractPipe
Add a parameter to the list of parameters- Specified by:
addParameter
in interfaceIWithParameters
- Overrides:
addParameter
in classAbstractPipe
-
getPhysicalDestinationName
- Specified by:
getPhysicalDestinationName
in interfaceHasPhysicalDestination
-
setJmsRealm
@Deprecated(forRemoval=true, since="7.7.0") @ConfigurationWarning("We discourage the use of jmsRealms for datasources. To specify a datasource other then the default, use the datasourceName attribute directly, instead of referring to a realm") public void setJmsRealm(String jmsRealmName) Deprecated, for removal: This API element is subject to removal in a future version. -
setQuery
The SQL query text to be excecuted each time sendMessage() is called. When not set, the input message is taken as the query -
setDatasourceName
-
setUseNamedParams
-
setTrimSpaces
-
setSqlDialect
-
setLockRows
-
setLockWait
-
setAvoidLocking
-
setBlobCharset
@ReferTo(AbstractJdbcQuerySender.class) @Deprecated(forRemoval=true, since="7.9.0") public void setBlobCharset(String charset) Deprecated, for removal: This API element is subject to removal in a future version. -
setBlobSmartGet
-
setBlobsCompressed
-
getDomain
- Specified by:
getDomain
in interfaceHasPhysicalDestination
-