Class AbstractNetworkConnector

All Implemented Interfaces:
Closeable, AutoCloseable, Connector, NetworkConnector, Container, Destroyable, Dumpable, Dumpable.DumpableContainer, Graceful, LifeCycle
Direct Known Subclasses:
QuicServerConnector, ServerConnector

@ManagedObject("AbstractNetworkConnector") public abstract class AbstractNetworkConnector extends AbstractConnector implements NetworkConnector
An abstract Network Connector.

Extends the AbstractConnector support for the NetworkConnector interface.

  • Constructor Details

  • Method Details

    • setHost

      public void setHost(String host)
    • getHost

      @ManagedAttribute("The network interface this connector binds to as an IP address or a hostname. If null or 0.0.0.0, then bind to all interfaces.") public String getHost()
      Specified by:
      getHost in interface NetworkConnector
      Returns:
      The hostname representing the interface to which this connector will bind, or null for all interfaces.
    • setPort

      public void setPort(int port)
    • getPort

      @ManagedAttribute("Port this connector listens on. If set the 0 a random port is assigned which may be obtained with getLocalPort()") public int getPort()
      Specified by:
      getPort in interface NetworkConnector
      Returns:
      The configured port for the connector or 0 if any available port may be used.
    • getLocalPort

      public int getLocalPort()
      Specified by:
      getLocalPort in interface NetworkConnector
      Returns:
      The actual port the connector is listening on, or -1 if it has not been opened, or -2 if it has been closed.
    • doStart

      protected void doStart() throws Exception
      Description copied from class: ContainerLifeCycle
      Starts the managed lifecycle beans in the order they were added.
      Overrides:
      doStart in class AbstractConnector
      Throws:
      AbstractLifeCycle.StopException - If thrown, the lifecycle will immediately be stopped.
      Exception - If there was a problem starting. Will cause a transition to FAILED state
    • doStop

      protected void doStop() throws Exception
      Description copied from class: ContainerLifeCycle
      Stops the managed lifecycle beans in the reverse order they were added.
      Overrides:
      doStop in class AbstractConnector
      Throws:
      Exception - If there was a problem stopping. Will cause a transition to FAILED state
    • open

      public void open() throws IOException
      Description copied from interface: NetworkConnector

      Performs the activities needed to open the network communication (for example, to start accepting incoming network connections).

      Implementation must be idempotent.

      Specified by:
      open in interface NetworkConnector
      Throws:
      IOException - if this connector cannot be opened
      See Also:
    • close

      public void close()
      Description copied from interface: NetworkConnector

      Performs the activities needed to close the network communication (for example, to stop accepting network connections).

      Once a connector has been closed, it cannot be opened again without first calling LifeCycle.stop() and it will not be active again until a subsequent call to LifeCycle.start().

      Implementation must be idempotent.

      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
      Specified by:
      close in interface NetworkConnector
    • shutdown

      public CompletableFuture<Void> shutdown()
      Description copied from interface: Graceful
      Shutdown the component. When this method returns, the component should not accept any new load.
      Specified by:
      shutdown in interface Graceful
      Overrides:
      shutdown in class AbstractConnector
      Returns:
      A future that is completed once all load on the component is completed
    • handleAcceptFailure

      protected boolean handleAcceptFailure(Throwable ex)
      Overrides:
      handleAcceptFailure in class AbstractConnector
    • toString

      public String toString()
      Overrides:
      toString in class AbstractConnector