ProtocolManager (ActiveMQ Artemis Web 1.1.0.wildfly-010 API)
Date: 2015-12-18

org.apache.activemq.artemis.spi.core.protocol

## Interface ProtocolManager<P extends BaseInterceptor>

-     public interface ProtocolManager<P extends BaseInterceptor>

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `acceptsNoHandshake()` If this protocols accepts connectoins without an initial handshake.
    `void` | `addChannelHandlers(io.netty.channel.ChannelPipeline pipeline)`
    `ConnectionEntry` | `createConnectionEntry(Acceptor acceptorUsed, Connection connection)`
    `MessageConverter` | `getConverter()` Gets the Message Converter towards ActiveMQ Artemis.
    `ProtocolManagerFactory<P>` | `getFactory()`
    `void` | `handleBuffer(RemotingConnection connection, ActiveMQBuffer buffer)`
    `void` | `handshake(org.apache.activemq.artemis.core.remoting.impl.netty.NettyServerConnection connection, ActiveMQBuffer buffer)`
    `boolean` | `isProtocol(byte[] array)`
    `void` | `removeHandler(String name)`
    `void` | `updateInterceptors(List<BaseInterceptor> incomingInterceptors, List<BaseInterceptor> outgoingInterceptors)` This method will receive all the interceptors on the system and you should filter them out *

- - ### Method Detail

    - #### getFactory

          ProtocolManagerFactory<P> getFactory()

    - #### updateInterceptors

          void updateInterceptors(List<BaseInterceptor> incomingInterceptors,
                                  List<BaseInterceptor> outgoingInterceptors)

      This method will receive all the interceptors on the system and you should filter them out *
      Parameters:
        `incomingInterceptors` -
        `outgoingInterceptors` -

    - #### createConnectionEntry

          ConnectionEntry createConnectionEntry(Acceptor acceptorUsed,
                                                Connection connection)

    - #### removeHandler

          void removeHandler(String name)

    - #### handleBuffer

          void handleBuffer(RemotingConnection connection,
                            ActiveMQBuffer buffer)

    - #### addChannelHandlers

          void addChannelHandlers(io.netty.channel.ChannelPipeline pipeline)

    - #### isProtocol

          boolean isProtocol(byte[] array)

    - #### getConverter

          MessageConverter getConverter()

      Gets the Message Converter towards ActiveMQ Artemis. Notice this being null means no need to convert
      Returns:

    - #### acceptsNoHandshake

          boolean acceptsNoHandshake()

      If this protocols accepts connectoins without an initial handshake. If true this protocol will be the failback case no other conenctions are made. New designed protocols should always require a handshake. This is only useful for legacy protocols.

    - #### handshake

          void handshake(org.apache.activemq.artemis.core.remoting.impl.netty.NettyServerConnection connection,
                         ActiveMQBuffer buffer)

Copyright © 2015. All rights reserved.