Package org.apache.activemq.artemis.spi.core.remoting

## Interface Acceptor

- All Superinterfaces:
    `org.apache.activemq.artemis.core.server.ActiveMQComponent`

      public interface Acceptor
      extends org.apache.activemq.artemis.core.server.ActiveMQComponent

  An Acceptor is used by the RemotingService to allow clients to connect. It should take care of dispatching client requests to the RemotingService's Dispatcher.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `default int` | `getActualPort()` | This is a utility method for Socket-based acceptor implementations to get the actual port used.
    `org.apache.activemq.artemis.core.server.cluster.ClusterConnection` | `getClusterConnection()` |
    `java.util.Map<java.lang.String,​java.lang.Object>` | `getConfiguration()` |
    `java.lang.String` | `getName()` | The name of the acceptor used on the configuration.
    `default org.apache.activemq.artemis.core.protocol.ProtocolHandler` | `getProtocolHandler()` |
    `boolean` | `isUnsecurable()` | Whether this acceptor allows insecure connections.
    `void` | `pause()` | Pause the acceptor and stop it from receiving client requests.
    `void` | `reload()` | Re-create the acceptor with the existing configuration values.
    `void` | `setDefaultActiveMQPrincipal​(org.apache.activemq.artemis.core.security.ActiveMQPrincipal defaultActiveMQPrincipal)` | Set the default security Principal to be used when no user/pass are defined, only for InVM
    `void` | `setNotificationService​(org.apache.activemq.artemis.core.server.management.NotificationService notificationService)` | Set the notification service for this acceptor to use.
    `void` | `updateInterceptors​(java.util.List<BaseInterceptor> incomingInterceptors, java.util.List<BaseInterceptor> outgoingInterceptors)` | This will update the list of interceptors for each ProtocolManager inside the acceptor.

    - ### Methods inherited from interface org.apache.activemq.artemis.core.server.ActiveMQComponent

      `asyncStop, isStarted, start, stop`

- - ### Method Detail

    - #### getName

          java.lang.String getName()

      The name of the acceptor used on the configuration. for logging and debug purposes.

    - #### pause

          void pause()

      Pause the acceptor and stop it from receiving client requests.

    - #### updateInterceptors

          void updateInterceptors​(java.util.List<BaseInterceptor> incomingInterceptors,
                                  java.util.List<BaseInterceptor> outgoingInterceptors)

      This will update the list of interceptors for each ProtocolManager inside the acceptor.

    - #### getClusterConnection

          org.apache.activemq.artemis.core.server.cluster.ClusterConnection getClusterConnection()

      Returns:
        the cluster connection associated with this Acceptor

    - #### getConfiguration

          java.util.Map<java.lang.String,​java.lang.Object> getConfiguration()

    - #### setNotificationService

          void setNotificationService​(org.apache.activemq.artemis.core.server.management.NotificationService notificationService)

      Set the notification service for this acceptor to use.
      Parameters:
        `notificationService` - the notification service

    - #### setDefaultActiveMQPrincipal

          void setDefaultActiveMQPrincipal​(org.apache.activemq.artemis.core.security.ActiveMQPrincipal defaultActiveMQPrincipal)

      Set the default security Principal to be used when no user/pass are defined, only for InVM

    - #### isUnsecurable

          boolean isUnsecurable()

      Whether this acceptor allows insecure connections.
      Throws:
        `java.lang.IllegalStateException` - if false @setDefaultActiveMQPrincipal

    - #### reload

          void reload()

      Re-create the acceptor with the existing configuration values. Useful, for example, for reloading key/trust stores on acceptors which support SSL.

    - #### getProtocolHandler

          default org.apache.activemq.artemis.core.protocol.ProtocolHandler getProtocolHandler()

    - #### getActualPort

          default int getActualPort()

      This is a utility method for Socket-based acceptor implementations to get the actual port used. This is useful for configurations which specify a port number of 0 which allows the JVM to select an ephemeral port.
      Returns:
        the actual port used if using a Socket-based acceptor implementation; -1 otherwise