The SIMediationSession public interface defines the methods
for querying and interacting with the service integration bus. As
well as defining the methods for working with the service integration
bus, this interface also includes methods that provide
information about where the mediation is invoked from, and the criteria
that are applied before the message is mediated.
Both selector and discriminator control
which messages are sent to the mediation, through a rule specified
in a text string. The rule specified by the selector examines the
header and properties of the message, whereas the discriminator examines
the topic of the message. If a message contains both selector and
discriminator, it must match both rules for the message to be mediated.
If either the selector or the discriminator rule does not match, the
message is not mediated.
The API has these methods:
- getBusName returns the name of the bus upon
which the mediation is associated.
- getDestinationName returns the name of the
destination with which the mediation is associated.
- getDiscriminator returns the discriminator
that is defined in the mediation definition.
- getMediationName returns the name of the mediation
that is being executed.
- getMessageSelector returns the message selector
that is defined in the mediation definition.
- getMessagingEngineName returns the name of
the messaging engine from which the mediation was invoked
- getSIDestinationConfiguration returns the SIDestinationConfiguration
object associated with the destination, specified by destinationName
or destinationAddress.
- receive receives an SIMessage from the service
integration bus. There are four variants.
- resetIdentity changes the identity of the given
message to the current run-as identity.
- send sends a copy of an SIMessage to the service
integration bus, in addition to the message returned by the message
interface.
See also the generated API information for SIMessageContext.