org.springframework.messaging.support

## Interface InterceptableChannel

All Known Implementing Classes:
  AbstractMessageChannel, AbstractSubscribableChannel, ExecutorSubscribableChannel

    public interface InterceptableChannel

A `MessageChannel` that maintains a list `ChannelInterceptors` and allows interception of message sending.

Since:
  4.1
Author:
  Rossen Stoyanchev

### Method Summary

All Methods Instance Methods Abstract Methods
`void` `addInterceptor(ChannelInterceptor interceptor)` Add a channel interceptor to the end of the list.
`void` `addInterceptor(int index, ChannelInterceptor interceptor)` Add a channel interceptor at the specified index.
`List<ChannelInterceptor>` `getInterceptors()` Return the list of configured interceptors.
`boolean` `removeInterceptor(ChannelInterceptor interceptor)` Remove the given interceptor.
`ChannelInterceptor` `removeInterceptor(int index)` Remove the interceptor at the given index.
`void` `setInterceptors(List<ChannelInterceptor> interceptors)` Set the list of channel interceptors clearing any existing interceptors.

### Method Detail

#### setInterceptors

    void setInterceptors(List<ChannelInterceptor> interceptors)

Set the list of channel interceptors clearing any existing interceptors.

#### addInterceptor

    void addInterceptor(ChannelInterceptor interceptor)

Add a channel interceptor to the end of the list.

#### addInterceptor

    void addInterceptor(int index,
                        ChannelInterceptor interceptor)

Add a channel interceptor at the specified index.

#### getInterceptors

    List<ChannelInterceptor> getInterceptors()

Return the list of configured interceptors.

#### removeInterceptor

    boolean removeInterceptor(ChannelInterceptor interceptor)

Remove the given interceptor.

#### removeInterceptor

    ChannelInterceptor removeInterceptor(int index)

Remove the interceptor at the given index.