Class NetworkConnectionImpl.bogusTransport

java.lang.Object
com.biglybt.core.networkmanager.impl.NetworkConnectionImpl.bogusTransport
All Implemented Interfaces:
Transport, TransportBase
Enclosing class:
NetworkConnectionImpl

protected static class NetworkConnectionImpl.bogusTransport extends Object implements Transport
  • Field Details

    • transport

      private final Transport transport
  • Constructor Details

    • bogusTransport

      protected bogusTransport(Transport _transport)
  • Method Details

    • isReadyForWrite

      public boolean isReadyForWrite(EventWaiter waiter)
      Description copied from interface: TransportBase
      Is the transport ready to write, i.e. will a write request result in >0 bytes written.
      Specified by:
      isReadyForWrite in interface TransportBase
      Returns:
      true if the transport is write ready, false if not yet ready
    • isReadyForRead

      public long isReadyForRead(EventWaiter waiter)
      Description copied from interface: TransportBase
      Is the transport ready to read, i.e. will a read request result in >0 bytes read.
      Specified by:
      isReadyForRead in interface TransportBase
      Returns:
      0 if the transport is read ready, ms since last ready or created if never ready
    • isTCP

      public boolean isTCP()
      Specified by:
      isTCP in interface TransportBase
    • isSOCKS

      public boolean isSOCKS()
      Specified by:
      isSOCKS in interface Transport
    • getPluginProxy

      public AEProxyFactory.PluginProxy getPluginProxy()
      Specified by:
      getPluginProxy in interface Transport
    • getDescription

      public String getDescription()
      Description copied from interface: TransportBase
      Get a textual description for this transport.
      Specified by:
      getDescription in interface TransportBase
      Returns:
      description
    • getMssSize

      public int getMssSize()
      Specified by:
      getMssSize in interface Transport
    • setAlreadyRead

      public void setAlreadyRead(ByteBuffer bytes_already_read)
      Description copied from interface: Transport
      Inject the given already-read data back into the read stream.
      Specified by:
      setAlreadyRead in interface Transport
      Parameters:
      bytes_already_read - data
    • getTransportEndpoint

      public TransportEndpoint getTransportEndpoint()
      Description copied from interface: Transport
      Get the socket channel used by the transport.
      Specified by:
      getTransportEndpoint in interface Transport
      Returns:
      the socket channel
    • getTransportStartpoint

      public TransportStartpoint getTransportStartpoint()
      Specified by:
      getTransportStartpoint in interface Transport
    • isEncrypted

      public boolean isEncrypted()
      Specified by:
      isEncrypted in interface Transport
    • getEncryption

      public String getEncryption(boolean verbose)
      Description copied from interface: Transport
      Return a textual description of the encryption for this transport
      Specified by:
      getEncryption in interface Transport
      Returns:
    • getProtocol

      public String getProtocol()
      Specified by:
      getProtocol in interface Transport
    • setReadyForRead

      public void setReadyForRead()
      Description copied from interface: Transport
      fake a wakeup so that a read cycle is attempted
      Specified by:
      setReadyForRead in interface Transport
    • write

      public long write(ByteBuffer[] buffers, int array_offset, int length) throws IOException
      Description copied from interface: Transport
      Write data to the transport from the given buffers. NOTE: Works like GatheringByteChannel.
      Specified by:
      write in interface Transport
      Parameters:
      buffers - from which bytes are to be retrieved
      array_offset - offset within the buffer array of the first buffer from which bytes are to be retrieved
      length - maximum number of buffers to be accessed
      Returns:
      number of bytes written
      Throws:
      IOException - on write error
    • read

      public long read(ByteBuffer[] buffers, int array_offset, int length) throws IOException
      Description copied from interface: Transport
      Read data from the transport into the given buffers. NOTE: Works like ScatteringByteChannel.
      Specified by:
      read in interface Transport
      Parameters:
      buffers - into which bytes are to be placed
      array_offset - offset within the buffer array of the first buffer into which bytes are to be placed
      length - maximum number of buffers to be accessed
      Returns:
      number of bytes read
      Throws:
      IOException - on read error
    • setTransportMode

      public void setTransportMode(int mode)
      Description copied from interface: Transport
      Set the transport to the given speed mode.
      Specified by:
      setTransportMode in interface Transport
      Parameters:
      mode - to change to
    • getTransportMode

      public int getTransportMode()
      Description copied from interface: Transport
      Get the transport's speed mode.
      Specified by:
      getTransportMode in interface Transport
      Returns:
      current mode
    • connectOutbound

      public void connectOutbound(ByteBuffer initial_data, Transport.ConnectListener listener, int priority)
      Description copied from interface: Transport
      Kick off an outbound connection
      Specified by:
      connectOutbound in interface Transport
    • connectedInbound

      public void connectedInbound()
      Description copied from interface: Transport
      Indicate that inbound connection is complete
      Specified by:
      connectedInbound in interface Transport
    • close

      public void close(String reason)
      Description copied from interface: Transport
      Close the transport connection.
      Specified by:
      close in interface Transport
    • isClosed

      public boolean isClosed()
      Specified by:
      isClosed in interface Transport
    • bindConnection

      public void bindConnection(NetworkConnection connection)
      Specified by:
      bindConnection in interface Transport
    • unbindConnection

      public void unbindConnection(NetworkConnection connection)
      Specified by:
      unbindConnection in interface Transport
    • getUserData

      public Object getUserData(Object key)
      Specified by:
      getUserData in interface Transport
    • setUserData

      public void setUserData(Object key, Object value)
      Specified by:
      setUserData in interface Transport
    • setTrace

      public void setTrace(boolean on)
      Specified by:
      setTrace in interface Transport