Table of Contents

Interface IChannelInterceptor

Namespace
Steeltoe.Messaging.Support
Assembly
Steeltoe.Messaging.Abstractions.dll

Interface for interceptors that are able to view and/or modify the Messages being sent-to and/or received-from a MessageChannel

public interface IChannelInterceptor : IOrdered
Inherited Members

Methods

AfterReceiveCompletion(IMessage, IMessageChannel, Exception)

Invoked after the completion of a receive regardless of any exception that have been raised thus allowing for proper resource cleanup.

void AfterReceiveCompletion(IMessage message, IMessageChannel channel, Exception exception)

Parameters

message IMessage

the message being processed

channel IMessageChannel

the channel the message is from

exception Exception

the exception that may have occured; can be null

AfterSendCompletion(IMessage, IMessageChannel, bool, Exception)

Invoked after the completion of a send regardless of any exception that have been raised thus allowing for proper resource cleanup.

void AfterSendCompletion(IMessage message, IMessageChannel channel, bool sent, Exception exception)

Parameters

message IMessage

the message being processed

channel IMessageChannel

the channel the message for

sent bool

the return value of the send

exception Exception

the exception that may have occured; can be null

PostReceive(IMessage, IMessageChannel)

Invoked immediately after a Message has been retrieved but before it is returned to the caller.

IMessage PostReceive(IMessage message, IMessageChannel channel)

Parameters

message IMessage

the message being processed

channel IMessageChannel

the channel the message is from

Returns

IMessage

the resulting message after post processing; can be null

PostSend(IMessage, IMessageChannel, bool)

Invoked immediately after the send invocation.

void PostSend(IMessage message, IMessageChannel channel, bool sent)

Parameters

message IMessage

the message being processed

channel IMessageChannel

the channel the message for

sent bool

the return value of the send

PreReceive(IMessageChannel)

Invoked as soon as receive is called and before a Message is actually retrieved.

bool PreReceive(IMessageChannel channel)

Parameters

channel IMessageChannel

the channel the message for

Returns

bool

false if no receive should be done;

PreSend(IMessage, IMessageChannel)

Invoked before the Message is actually sent to the channel. This allows for modification of the Message if necessary.

IMessage PreSend(IMessage message, IMessageChannel channel)

Parameters

message IMessage

the message being processed

channel IMessageChannel

the channel the message for

Returns

IMessage

the resulting message to send; can be null