public abstract class SenderWrapperBase extends SenderWithParametersBase implements HasStatistics, ICacheEnabled<String,String>
HasStatistics.Action
Modifier and Type | Field and Description |
---|---|
protected SenderWrapperProcessor |
senderWrapperProcessor |
parameterNamesMustBeUnique, paramList
log
Constructor and Description |
---|
SenderWrapperBase() |
Modifier and Type | Method and Description |
---|---|
void |
close()
Stop/close the sender and deallocate resources.
|
void |
configure()
configure() is called once at startup of the framework in the configure method of the owner of this sender. |
abstract SenderResult |
doSendMessage(Message message,
PipeLineSession session) |
String |
getLogPrefix()
Returns the true name of the class and not
XsltPipe$$EnhancerBySpringCGLIB$$563e6b5d . |
protected abstract boolean |
isSenderConfigured() |
void |
open()
This method will be called to start the sender.
|
SenderResult |
sendMessage(Message message,
PipeLineSession session)
Send a message to some destination (as configured in the Sender object).
|
void |
setGetInputFromFixedValue(String string)
If set, this fixed value is taken as input, instead of regular input
|
void |
setGetInputFromSessionKey(String string)
If set, input is taken from this session key, instead of regular input
|
void |
setPreserveInput(boolean preserveInput)
If set
true , the input of a pipe is restored before processing the next one |
void |
setStoreInputInSessionKey(String string)
If set, the input is stored under this session key
|
void |
setStoreResultInSessionKey(String string)
If set, the result is stored under this session key
|
addParameter, checkStringAttributeOrParameter, consumesSessionVariable, getParameterList, getParameterOverriddenAttributeValue, getParameterOverriddenAttributeValue, getParameterValueList
createBean, getName, setApplicationContext, setName
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
iterateOverStatistics
getCache, setCache
isSynchronous, sendMessageOrThrow
getName, setName
getApplicationContext, getName
getConfigurationClassLoader
protected SenderWrapperProcessor senderWrapperProcessor
public void configure() throws ConfigurationException
ISender
configure()
is called once at startup of the framework in the configure method of the owner of this sender.
Purpose of this method is to check whether the static configuration of the sender is correct.
As much as possible class-instantiating should take place in the configure()
or open()
method, to improve performance.configure
in interface IConfigurable
configure
in interface ISender
configure
in class SenderWithParametersBase
ConfigurationException
public void open() throws SenderException
ISender
sendMessage()
method.open
in interface ISender
open
in class SenderBase
SenderException
public void close() throws SenderException
ISender
close
in interface ISender
close
in class SenderBase
SenderException
protected abstract boolean isSenderConfigured()
public abstract SenderResult doSendMessage(Message message, PipeLineSession session) throws SenderException, TimeoutException
SenderException
TimeoutException
public SenderResult sendMessage(Message message, PipeLineSession session) throws SenderException, TimeoutException
ISender
configure()
method is called.
The following table shows the difference between synchronous and a-synchronous senders:
synchronous | a-synchronous | |
---|---|---|
ISender.isSynchronous() returns | true | false |
return value of sendMessage() is | the reply-message | the messageId of the message sent |
the correlationID specified with sendMessage() | may be ignored | is sent with the message |
a {link TimeOutException} | may be thrown if a timeout occurs waiting for a reply | should not be expected |
Multiple objects may try to call this method at the same time, from different threads.
Implementations of this method should therefore be thread-safe, or synchronized
.
sendMessage
in interface ISender
SenderException
TimeoutException
public String getLogPrefix()
SenderBase
XsltPipe$$EnhancerBySpringCGLIB$$563e6b5d
.
ClassUtils.nameOf(Object)
makes sure the original class will be used.getLogPrefix
in class SenderBase
public void setGetInputFromSessionKey(String string)
public void setGetInputFromFixedValue(String string)
public void setPreserveInput(boolean preserveInput)
true
, the input of a pipe is restored before processing the next onepublic void setStoreResultInSessionKey(String string)
public void setStoreInputInSessionKey(String string)
Copyright © 2023 Frank!Framework. All rights reserved.