Package org.frankframework.pipes
Class AsyncSenderWithListenerPipe<M>
java.lang.Object
org.frankframework.core.TransactionAttributes
org.frankframework.pipes.AbstractPipe
org.frankframework.pipes.FixedForwardPipe
org.frankframework.pipes.MessageSendingPipe
org.frankframework.pipes.AsyncSenderWithListenerPipe<M>
- All Implemented Interfaces:
FrankElement,HasApplicationContext,HasName,HasSender,HasTransactionAttribute,IConfigurable,IForwardTarget,IPipe,IScopeProvider,IWithParameters,NameAware,EventThrowing,org.springframework.beans.factory.Aware,org.springframework.context.ApplicationContextAware,org.springframework.context.Lifecycle
@Category(BASIC)
@EnterpriseIntegrationPattern(ENDPOINT)
public class AsyncSenderWithListenerPipe<M>
extends MessageSendingPipe
-
Nested Class Summary
Nested classes/interfaces inherited from class org.frankframework.pipes.MessageSendingPipe
MessageSendingPipe.LinkMethod -
Field Summary
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_EVENTFields 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 TypeMethodDescriptionvoidChecks for correct configuration of forward.protected StringdoLogToMessageLog(Message input, PipeLineSession session, Message originalMessage, String messageID, String correlationID) protected PipeRunResultpostSendAction(PipeRunResult sendResult, String correlationID, PipeLineSession session) protected voidvoidsetAuditTrailNamespaceDefs(String auditTrailNamespaceDefs) Namespace definitions for auditTrailXPath.voidsetAuditTrailSessionKey(String string) Key of a pipeline session variable.voidsetAuditTrailXPath(String string) XPath expression to extract the audit trail from the message.voidsetCorrelationIDNamespaceDefs(String correlationIDNamespaceDefs) Namespace definitions for correlationIDXPath.voidsetCorrelationIDSessionKey(String string) Key of a pipeline session variable.voidsetCorrelationIDStyleSheet(String string) Stylesheet to extract correlationid from messagevoidsetCorrelationIDXPath(String string) XPath expression to extract correlationid from messagevoidsetInputValidator(IValidator inputValidator) specification of Pipe to validate request messages, or request and response message if configured as mixed mode validatorvoidsetInputWrapper(IWrapperPipe inputWrapper) specification of Pipe to wrap or unwrap request messagesvoidsetLabelNamespaceDefs(String labelXNamespaceDefs) Namespace definitions for labelXPath.voidsetLabelStyleSheet(String string) Stylesheet to extract a label from a message.voidsetLabelXPath(String string) XPath expression to extract the label from the message.voidsetListener(ICorrelatedPullingListener<M> listener) Listener for responses on the request sent.voidsetMessageLog(ITransactionalStorage<?> messageLog) log of all messages sentvoidThe sender that should send the messagevoidsetUseInputForExtract(boolean b) Iftrue, the input of the Pipe is used to extract the audit trail, correlation ID, and label (instead of the wrapped input).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.MessageSendingPipe
consumesSessionVariable, doPipe, increaseRetryIntervalAndWait, sendMessage, sendMessageWithRetries, setCheckRootTag, setCheckXmlWellFormed, setExceptionOnResult, setHideMethod, setHideRegex, setLinkMethod, setMaxRetries, setName, setOutputValidator, setOutputWrapper, setPresumedTimeOutInterval, setResultOnTimeOut, setRetryMaxInterval, setRetryMinInterval, setRetryNamespaceDefs, setRetryXPath, setStubFilename, setTimeoutOnResult, setTimeOutOnResult, sizeStatisticsEnabled, storeMessageMethods 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, createBean, findForward, getAdapter, getEventSourceName, getForwards, getParameterList, hasRegisteredForward, isRunning, registerEvent, setApplicationContext, setChompCharSize, setDurationThreshold, setElementToMove, setElementToMoveChain, setElementToMoveSessionKey, setEmptyInputReplacement, setGetInputFromFixedValue, setGetInputFromSessionKey, setLocker, setLogIntermediaryResults, setMaxThreads, setPreserveInput, setRemoveCompactMsgNamespaces, setRestoreMovedElements, setSecLogSessionKeys, setSizeStatistics, setStoreResultInSessionKey, setWriteToSecLog, 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
-
AsyncSenderWithListenerPipe
public AsyncSenderWithListenerPipe()
-
-
Method Details
-
configure
Description copied from class:FixedForwardPipeChecks for correct configuration of forward.- Specified by:
configurein interfaceIConfigurable- Overrides:
configurein classMessageSendingPipe- Throws:
ConfigurationException- in case it was not able to configure the component.
-
propagateName
protected void propagateName()- Overrides:
propagateNamein classMessageSendingPipe
-
doLogToMessageLog
protected String doLogToMessageLog(Message input, PipeLineSession session, Message originalMessage, String messageID, String correlationID) throws SenderException - Overrides:
doLogToMessageLogin classMessageSendingPipe- Throws:
SenderException
-
postSendAction
protected PipeRunResult postSendAction(PipeRunResult sendResult, String correlationID, PipeLineSession session) throws ListenerException, TimeoutException - Overrides:
postSendActionin classMessageSendingPipe- Throws:
ListenerExceptionTimeoutException
-
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 classMessageSendingPipe
-
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 classMessageSendingPipe
-
setMessageLog
Description copied from class:MessageSendingPipelog of all messages sent- Overrides:
setMessageLogin classMessageSendingPipe
-
setInputWrapper
Description copied from class:MessageSendingPipespecification of Pipe to wrap or unwrap request messages- Overrides:
setInputWrapperin classMessageSendingPipe
-
setInputValidator
Description copied from class:MessageSendingPipespecification of Pipe to validate request messages, or request and response message if configured as mixed mode validator- Overrides:
setInputValidatorin classMessageSendingPipe
-
setSender
Description copied from class:MessageSendingPipeThe sender that should send the message- Overrides:
setSenderin classMessageSendingPipe
-
setCorrelationIDStyleSheet
Stylesheet to extract correlationid from message -
setCorrelationIDXPath
XPath expression to extract correlationid from message -
setCorrelationIDNamespaceDefs
Namespace definitions for correlationIDXPath. Must be in the form of a comma or space separated list ofprefix=namespaceUridefinitions. -
setCorrelationIDSessionKey
Key of a pipeline session variable. If specified, the value of the PipelineSession variable is used as input for the XPathExpression or stylesheet, instead of the current input message. -
setLabelStyleSheet
Stylesheet to extract a label from a message. -
setLabelXPath
XPath expression to extract the label from the message. -
setLabelNamespaceDefs
Namespace definitions for labelXPath. Must be in the form of a comma or space-separated list ofprefix=namespaceUridefinitions. -
setAuditTrailXPath
XPath expression to extract the audit trail from the message. -
setAuditTrailNamespaceDefs
Namespace definitions for auditTrailXPath. Must be in the form of a comma or space-separated list ofprefix=namespaceUridefinitions. -
setAuditTrailSessionKey
Key of a pipeline session variable. If specified, the value of the PipelineSession variable is used as an audit trail (instead of the default 'no audit trail'). -
setUseInputForExtract
public void setUseInputForExtract(boolean b) Iftrue, the input of the Pipe is used to extract the audit trail, correlation ID, and label (instead of the wrapped input).- Default value
- true
-