Class SslConduit

java.lang.Object
io.undertow.protocols.ssl.SslConduit
All Implemented Interfaces:
org.xnio.conduits.Conduit, org.xnio.conduits.SinkConduit, org.xnio.conduits.SourceConduit, org.xnio.conduits.StreamSinkConduit, org.xnio.conduits.StreamSourceConduit

public class SslConduit extends Object implements org.xnio.conduits.StreamSourceConduit, org.xnio.conduits.StreamSinkConduit
Conduit for SSL connections.
Author:
Stuart Douglas, Flavia Rainone
  • Field Details

    • MAX_READ_LISTENER_INVOCATIONS

      public static final int MAX_READ_LISTENER_INVOCATIONS
    • EMPTY_BUFFER

      public static final ByteBuffer EMPTY_BUFFER
  • Method Details

    • terminateReads

      public void terminateReads() throws IOException
      Specified by:
      terminateReads in interface org.xnio.conduits.SourceConduit
      Throws:
      IOException
    • isReadShutdown

      public boolean isReadShutdown()
      Specified by:
      isReadShutdown in interface org.xnio.conduits.SourceConduit
    • resumeReads

      public void resumeReads()
      Specified by:
      resumeReads in interface org.xnio.conduits.SourceConduit
    • suspendReads

      public void suspendReads()
      Specified by:
      suspendReads in interface org.xnio.conduits.SourceConduit
    • wakeupReads

      public void wakeupReads()
      Specified by:
      wakeupReads in interface org.xnio.conduits.SourceConduit
    • isReadResumed

      public boolean isReadResumed()
      Specified by:
      isReadResumed in interface org.xnio.conduits.SourceConduit
    • awaitReadable

      public void awaitReadable() throws IOException
      Specified by:
      awaitReadable in interface org.xnio.conduits.SourceConduit
      Throws:
      IOException
    • awaitReadable

      public void awaitReadable(long time, TimeUnit timeUnit) throws IOException
      Specified by:
      awaitReadable in interface org.xnio.conduits.SourceConduit
      Throws:
      IOException
    • getReadThread

      public org.xnio.XnioIoThread getReadThread()
      Specified by:
      getReadThread in interface org.xnio.conduits.SourceConduit
    • setReadReadyHandler

      public void setReadReadyHandler(org.xnio.conduits.ReadReadyHandler handler)
      Specified by:
      setReadReadyHandler in interface org.xnio.conduits.SourceConduit
    • transferFrom

      public long transferFrom(FileChannel src, long position, long count) throws IOException
      Specified by:
      transferFrom in interface org.xnio.conduits.StreamSinkConduit
      Throws:
      IOException
    • transferFrom

      public long transferFrom(org.xnio.channels.StreamSourceChannel source, long count, ByteBuffer throughBuffer) throws IOException
      Specified by:
      transferFrom in interface org.xnio.conduits.StreamSinkConduit
      Throws:
      IOException
    • write

      public int write(ByteBuffer src) throws IOException
      Specified by:
      write in interface org.xnio.conduits.StreamSinkConduit
      Throws:
      IOException
    • write

      public long write(ByteBuffer[] srcs, int offs, int len) throws IOException
      Specified by:
      write in interface org.xnio.conduits.StreamSinkConduit
      Throws:
      IOException
    • writeFinal

      public int writeFinal(ByteBuffer src) throws IOException
      Specified by:
      writeFinal in interface org.xnio.conduits.StreamSinkConduit
      Throws:
      IOException
    • writeFinal

      public long writeFinal(ByteBuffer[] srcs, int offset, int length) throws IOException
      Specified by:
      writeFinal in interface org.xnio.conduits.StreamSinkConduit
      Throws:
      IOException
    • terminateWrites

      public void terminateWrites() throws IOException
      Specified by:
      terminateWrites in interface org.xnio.conduits.SinkConduit
      Throws:
      IOException
    • isWriteShutdown

      public boolean isWriteShutdown()
      Specified by:
      isWriteShutdown in interface org.xnio.conduits.SinkConduit
    • resumeWrites

      public void resumeWrites()
      Specified by:
      resumeWrites in interface org.xnio.conduits.SinkConduit
    • suspendWrites

      public void suspendWrites()
      Specified by:
      suspendWrites in interface org.xnio.conduits.SinkConduit
    • wakeupWrites

      public void wakeupWrites()
      Specified by:
      wakeupWrites in interface org.xnio.conduits.SinkConduit
    • isWriteResumed

      public boolean isWriteResumed()
      Specified by:
      isWriteResumed in interface org.xnio.conduits.SinkConduit
    • awaitWritable

      public void awaitWritable() throws IOException
      Specified by:
      awaitWritable in interface org.xnio.conduits.SinkConduit
      Throws:
      IOException
    • awaitWritable

      public void awaitWritable(long time, TimeUnit timeUnit) throws IOException
      Specified by:
      awaitWritable in interface org.xnio.conduits.SinkConduit
      Throws:
      IOException
    • getWriteThread

      public org.xnio.XnioIoThread getWriteThread()
      Specified by:
      getWriteThread in interface org.xnio.conduits.SinkConduit
    • setWriteReadyHandler

      public void setWriteReadyHandler(org.xnio.conduits.WriteReadyHandler handler)
      Specified by:
      setWriteReadyHandler in interface org.xnio.conduits.SinkConduit
    • truncateWrites

      public void truncateWrites() throws IOException
      Specified by:
      truncateWrites in interface org.xnio.conduits.SinkConduit
      Throws:
      IOException
    • flush

      public boolean flush() throws IOException
      Specified by:
      flush in interface org.xnio.conduits.SinkConduit
      Throws:
      IOException
    • transferTo

      public long transferTo(long position, long count, FileChannel target) throws IOException
      Specified by:
      transferTo in interface org.xnio.conduits.StreamSourceConduit
      Throws:
      IOException
    • transferTo

      public long transferTo(long count, ByteBuffer throughBuffer, org.xnio.channels.StreamSinkChannel target) throws IOException
      Specified by:
      transferTo in interface org.xnio.conduits.StreamSourceConduit
      Throws:
      IOException
    • read

      public int read(ByteBuffer dst) throws IOException
      Specified by:
      read in interface org.xnio.conduits.StreamSourceConduit
      Throws:
      IOException
    • read

      public long read(ByteBuffer[] dsts, int offs, int len) throws IOException
      Specified by:
      read in interface org.xnio.conduits.StreamSourceConduit
      Throws:
      IOException
    • getWorker

      public org.xnio.XnioWorker getWorker()
      Specified by:
      getWorker in interface org.xnio.conduits.Conduit
    • startHandshake

      public void startHandshake() throws SSLException
      Throws:
      SSLException
    • getSslSession

      public SSLSession getSslSession()
    • getSSLEngine

      public SSLEngine getSSLEngine()
    • close

      public void close()
      forcibly closes the connection
    • setSslEngine

      public void setSslEngine(SSLEngine engine)
    • toString

      public String toString()
      Overrides:
      toString in class Object