Module swim.io.mqtt
Package swim.io.mqtt

Class AbstractMqttSocket<I,O>

java.lang.Object
swim.io.mqtt.AbstractMqttSocket<I,O>
All Implemented Interfaces:
FlowContext, IpContext, MqttSocket<I,O>

public abstract class AbstractMqttSocket<I,O> extends Object implements MqttSocket<I,O>, IpContext, FlowContext
  • Field Details

  • Constructor Details

    • AbstractMqttSocket

      public AbstractMqttSocket()
  • Method Details

    • mqttSocketContext

      public MqttSocketContext<I,O> mqttSocketContext()
      Specified by:
      mqttSocketContext in interface MqttSocket<I,O>
    • setMqttSocketContext

      public void setMqttSocketContext(MqttSocketContext<I,O> context)
      Specified by:
      setMqttSocketContext in interface MqttSocket<I,O>
    • idleTimeout

      public long idleTimeout()
      Specified by:
      idleTimeout in interface MqttSocket<I,O>
    • doRead

      public void doRead()
      Specified by:
      doRead in interface MqttSocket<I,O>
    • didRead

      public void didRead(MqttPacket<? extends I> packet)
      Specified by:
      didRead in interface MqttSocket<I,O>
    • doWrite

      public void doWrite()
      Specified by:
      doWrite in interface MqttSocket<I,O>
    • didWrite

      public void didWrite(MqttPacket<? extends O> packet)
      Specified by:
      didWrite in interface MqttSocket<I,O>
    • willConnect

      public void willConnect()
      Specified by:
      willConnect in interface MqttSocket<I,O>
    • didConnect

      public void didConnect()
      Specified by:
      didConnect in interface MqttSocket<I,O>
    • willSecure

      public void willSecure()
      Specified by:
      willSecure in interface MqttSocket<I,O>
    • didSecure

      public void didSecure()
      Specified by:
      didSecure in interface MqttSocket<I,O>
    • willBecome

      public void willBecome(IpSocket socket)
      Specified by:
      willBecome in interface MqttSocket<I,O>
    • didBecome

      public void didBecome(IpSocket socket)
      Specified by:
      didBecome in interface MqttSocket<I,O>
    • didTimeout

      public void didTimeout()
      Specified by:
      didTimeout in interface MqttSocket<I,O>
    • didDisconnect

      public void didDisconnect()
      Specified by:
      didDisconnect in interface MqttSocket<I,O>
    • didFail

      public void didFail(Throwable error)
      Specified by:
      didFail in interface MqttSocket<I,O>
    • isConnected

      public boolean isConnected()
      Description copied from interface: IpContext
      Returns true if the underlying network channel is currently connected.
      Specified by:
      isConnected in interface IpContext
    • isClient

      public boolean isClient()
      Description copied from interface: IpContext
      Returns true if the underlying network channel initiated an outgoing connection.
      Specified by:
      isClient in interface IpContext
    • isServer

      public boolean isServer()
      Description copied from interface: IpContext
      Returns true if the underlying network channel accepted an incoming connection.
      Specified by:
      isServer in interface IpContext
    • isSecure

      public boolean isSecure()
      Description copied from interface: IpContext
      Returns true if the underlying network transport is encrypted.
      Specified by:
      isSecure in interface IpContext
    • securityProtocol

      public String securityProtocol()
      Description copied from interface: IpContext
      Returns the name of the transport-layer security protocol used by the underlying network connection. Returns null if the underlying network channel is not currently connected, or if the underlying network connection is not secure.
      Specified by:
      securityProtocol in interface IpContext
    • cipherSuite

      public String cipherSuite()
      Description copied from interface: IpContext
      Returns the cryptographic cipher suite used by the underlying network connection. Returns null if the underlying network channel is not currently connected, or if the underlying network connection is not secure.
      Specified by:
      cipherSuite in interface IpContext
    • localAddress

      public InetSocketAddress localAddress()
      Description copied from interface: IpContext
      Returns the IP address and port of the local endpoint of the underlying network connection. Returns null if the underlying network channel is not currently connected.
      Specified by:
      localAddress in interface IpContext
    • localPrincipal

      public Principal localPrincipal()
      Description copied from interface: IpContext
      Returns the authenticated identity of the local endpoint of the underlying network connection. Returns null if the underlying network channel is not currently connected, or if the underlying network connection is not authenticated.
      Specified by:
      localPrincipal in interface IpContext
    • localCertificates

      public Collection<Certificate> localCertificates()
      Description copied from interface: IpContext
      Returns the certificate chain used to authenticate the local endpoint of the underlying network connection. Returns null if the underlying network channel is not currently connected, or if the underlying network connection is not authenticated.
      Specified by:
      localCertificates in interface IpContext
    • remoteAddress

      public InetSocketAddress remoteAddress()
      Description copied from interface: IpContext
      Returns the IP address and port of the remote endpoint of the underlying network connection. Returns null if the underlying network channel is not currently connected.
      Specified by:
      remoteAddress in interface IpContext
    • remotePrincipal

      public Principal remotePrincipal()
      Description copied from interface: IpContext
      Returns the authenticated identity of the remote endpoint of the underlying network connection. Returns null if the underlying network channel is not currently connected, or if the underlying network connection is not authenticated.
      Specified by:
      remotePrincipal in interface IpContext
    • remoteCertificates

      public Collection<Certificate> remoteCertificates()
      Description copied from interface: IpContext
      Returns the certificate chain used to authenticate the remote endpoint of the underlying network connection. Returns null if the underlying network channel is not currently connected, or if the underlying network connection is not authenticated.
      Specified by:
      remoteCertificates in interface IpContext
    • flowControl

      public FlowControl flowControl()
      Description copied from interface: FlowContext
      Returns the current FlowControl state of the underlying network channel.
      Specified by:
      flowControl in interface FlowContext
    • flowControl

      public void flowControl(FlowControl flowControl)
      Description copied from interface: FlowContext
      Enqueues an atomic replacement of the underlying network channel's flow control state with a new flowControl.
      Specified by:
      flowControl in interface FlowContext
    • flowControl

      public FlowControl flowControl(FlowModifier flowModifier)
      Description copied from interface: FlowContext
      Enqueues an atomic modification to the underlying network channel's flow control state by applying a flowModifier delta.
      Specified by:
      flowControl in interface FlowContext
    • mqttSettings

      public MqttSettings mqttSettings()
    • read

      public <I2 extends I> void read(Decoder<I2> content)
    • write

      public <O2 extends O> void write(MqttPacket<O2> packet)
    • become

      public void become(IpSocket socket)
    • close

      public void close()