Package io.undertow.protocols.ssl
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 Summary
Fields Modifier and Type Field Description static ByteBufferEMPTY_BUFFERstatic intMAX_READ_LISTENER_INVOCATIONS
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidawaitReadable()voidawaitReadable(long time, TimeUnit timeUnit)voidawaitWritable()voidawaitWritable(long time, TimeUnit timeUnit)voidclose()forcibly closes the connectionbooleanflush()org.xnio.XnioIoThreadgetReadThread()SSLEnginegetSSLEngine()SSLSessiongetSslSession()org.xnio.XnioWorkergetWorker()org.xnio.XnioIoThreadgetWriteThread()booleanisReadResumed()booleanisReadShutdown()booleanisWriteResumed()booleanisWriteShutdown()intread(ByteBuffer dst)longread(ByteBuffer[] dsts, int offs, int len)voidresumeReads()voidresumeWrites()voidsetReadReadyHandler(org.xnio.conduits.ReadReadyHandler handler)voidsetSslEngine(SSLEngine engine)voidsetWriteReadyHandler(org.xnio.conduits.WriteReadyHandler handler)voidstartHandshake()voidsuspendReads()voidsuspendWrites()voidterminateReads()voidterminateWrites()StringtoString()longtransferFrom(FileChannel src, long position, long count)longtransferFrom(org.xnio.channels.StreamSourceChannel source, long count, ByteBuffer throughBuffer)longtransferTo(long position, long count, FileChannel target)longtransferTo(long count, ByteBuffer throughBuffer, org.xnio.channels.StreamSinkChannel target)voidtruncateWrites()voidwakeupReads()voidwakeupWrites()intwrite(ByteBuffer src)longwrite(ByteBuffer[] srcs, int offs, int len)intwriteFinal(ByteBuffer src)longwriteFinal(ByteBuffer[] srcs, int offset, int length)
-
-
-
Field Detail
-
MAX_READ_LISTENER_INVOCATIONS
public static final int MAX_READ_LISTENER_INVOCATIONS
-
EMPTY_BUFFER
public static final ByteBuffer EMPTY_BUFFER
-
-
Method Detail
-
terminateReads
public void terminateReads() throws IOException- Specified by:
terminateReadsin interfaceorg.xnio.conduits.SourceConduit- Throws:
IOException
-
isReadShutdown
public boolean isReadShutdown()
- Specified by:
isReadShutdownin interfaceorg.xnio.conduits.SourceConduit
-
resumeReads
public void resumeReads()
- Specified by:
resumeReadsin interfaceorg.xnio.conduits.SourceConduit
-
suspendReads
public void suspendReads()
- Specified by:
suspendReadsin interfaceorg.xnio.conduits.SourceConduit
-
wakeupReads
public void wakeupReads()
- Specified by:
wakeupReadsin interfaceorg.xnio.conduits.SourceConduit
-
isReadResumed
public boolean isReadResumed()
- Specified by:
isReadResumedin interfaceorg.xnio.conduits.SourceConduit
-
awaitReadable
public void awaitReadable() throws IOException- Specified by:
awaitReadablein interfaceorg.xnio.conduits.SourceConduit- Throws:
IOException
-
awaitReadable
public void awaitReadable(long time, TimeUnit timeUnit) throws IOException- Specified by:
awaitReadablein interfaceorg.xnio.conduits.SourceConduit- Throws:
IOException
-
getReadThread
public org.xnio.XnioIoThread getReadThread()
- Specified by:
getReadThreadin interfaceorg.xnio.conduits.SourceConduit
-
setReadReadyHandler
public void setReadReadyHandler(org.xnio.conduits.ReadReadyHandler handler)
- Specified by:
setReadReadyHandlerin interfaceorg.xnio.conduits.SourceConduit
-
transferFrom
public long transferFrom(FileChannel src, long position, long count) throws IOException
- Specified by:
transferFromin interfaceorg.xnio.conduits.StreamSinkConduit- Throws:
IOException
-
transferFrom
public long transferFrom(org.xnio.channels.StreamSourceChannel source, long count, ByteBuffer throughBuffer) throws IOException- Specified by:
transferFromin interfaceorg.xnio.conduits.StreamSinkConduit- Throws:
IOException
-
write
public int write(ByteBuffer src) throws IOException
- Specified by:
writein interfaceorg.xnio.conduits.StreamSinkConduit- Throws:
IOException
-
write
public long write(ByteBuffer[] srcs, int offs, int len) throws IOException
- Specified by:
writein interfaceorg.xnio.conduits.StreamSinkConduit- Throws:
IOException
-
writeFinal
public int writeFinal(ByteBuffer src) throws IOException
- Specified by:
writeFinalin interfaceorg.xnio.conduits.StreamSinkConduit- Throws:
IOException
-
writeFinal
public long writeFinal(ByteBuffer[] srcs, int offset, int length) throws IOException
- Specified by:
writeFinalin interfaceorg.xnio.conduits.StreamSinkConduit- Throws:
IOException
-
terminateWrites
public void terminateWrites() throws IOException- Specified by:
terminateWritesin interfaceorg.xnio.conduits.SinkConduit- Throws:
IOException
-
isWriteShutdown
public boolean isWriteShutdown()
- Specified by:
isWriteShutdownin interfaceorg.xnio.conduits.SinkConduit
-
resumeWrites
public void resumeWrites()
- Specified by:
resumeWritesin interfaceorg.xnio.conduits.SinkConduit
-
suspendWrites
public void suspendWrites()
- Specified by:
suspendWritesin interfaceorg.xnio.conduits.SinkConduit
-
wakeupWrites
public void wakeupWrites()
- Specified by:
wakeupWritesin interfaceorg.xnio.conduits.SinkConduit
-
isWriteResumed
public boolean isWriteResumed()
- Specified by:
isWriteResumedin interfaceorg.xnio.conduits.SinkConduit
-
awaitWritable
public void awaitWritable() throws IOException- Specified by:
awaitWritablein interfaceorg.xnio.conduits.SinkConduit- Throws:
IOException
-
awaitWritable
public void awaitWritable(long time, TimeUnit timeUnit) throws IOException- Specified by:
awaitWritablein interfaceorg.xnio.conduits.SinkConduit- Throws:
IOException
-
getWriteThread
public org.xnio.XnioIoThread getWriteThread()
- Specified by:
getWriteThreadin interfaceorg.xnio.conduits.SinkConduit
-
setWriteReadyHandler
public void setWriteReadyHandler(org.xnio.conduits.WriteReadyHandler handler)
- Specified by:
setWriteReadyHandlerin interfaceorg.xnio.conduits.SinkConduit
-
truncateWrites
public void truncateWrites() throws IOException- Specified by:
truncateWritesin interfaceorg.xnio.conduits.SinkConduit- Throws:
IOException
-
flush
public boolean flush() throws IOException- Specified by:
flushin interfaceorg.xnio.conduits.SinkConduit- Throws:
IOException
-
transferTo
public long transferTo(long position, long count, FileChannel target) throws IOException- Specified by:
transferToin interfaceorg.xnio.conduits.StreamSourceConduit- Throws:
IOException
-
transferTo
public long transferTo(long count, ByteBuffer throughBuffer, org.xnio.channels.StreamSinkChannel target) throws IOException- Specified by:
transferToin interfaceorg.xnio.conduits.StreamSourceConduit- Throws:
IOException
-
read
public int read(ByteBuffer dst) throws IOException
- Specified by:
readin interfaceorg.xnio.conduits.StreamSourceConduit- Throws:
IOException
-
read
public long read(ByteBuffer[] dsts, int offs, int len) throws IOException
- Specified by:
readin interfaceorg.xnio.conduits.StreamSourceConduit- Throws:
IOException
-
getWorker
public org.xnio.XnioWorker getWorker()
- Specified by:
getWorkerin interfaceorg.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)
-
-