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
    Modifier and Type | Method and Description
    --- | ---
    `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.