Package com.rabbitmq.client.impl.nio
Class SocketChannelFrameHandlerState
- java.lang.Object
-
- com.rabbitmq.client.impl.nio.SocketChannelFrameHandlerState
-
public class SocketChannelFrameHandlerState extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description private java.nio.channels.SocketChannel
channel
(package private) java.nio.ByteBuffer
cipherIn
inbound data (ciphered if TLS is on)(package private) java.nio.ByteBuffer
cipherOut
outbound net data (ciphered if TLS is on)private AMQConnection
connection
(package private) FrameBuilder
frameBuilder
private long
lastActivity
should be used only in the NIO read threadprivate static org.slf4j.Logger
LOGGER
(package private) java.io.DataOutputStream
outputStream
(package private) java.nio.ByteBuffer
plainIn
inbound app data (deciphered if TLS is on)(package private) java.nio.ByteBuffer
plainOut
outbound app data (to be crypted if TLS is on)private SelectorHolder
readSelectorState
private static int
SOCKET_CLOSING_TIMEOUT
Time to linger before closing the socket forcefully.(package private) boolean
ssl
(package private) javax.net.ssl.SSLEngine
sslEngine
private NioQueue
writeQueue
private SelectorHolder
writeSelectorState
-
Constructor Summary
Constructors Constructor Description SocketChannelFrameHandlerState(java.nio.channels.SocketChannel channel, NioLoopContext nioLoopsState, NioParams nioParams, javax.net.ssl.SSLEngine sslEngine, int maxFramePayloadSize)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) void
close()
(package private) boolean
continueReading()
(package private) void
endWriteSequence()
java.nio.channels.SocketChannel
getChannel()
AMQConnection
getConnection()
long
getLastActivity()
NioQueue
getWriteQueue()
(package private) void
prepareForReadSequence()
(package private) void
prepareForWriteSequence()
void
sendHeader()
private void
sendWriteRequest(WriteRequest writeRequest)
void
setConnection(AMQConnection connection)
void
setLastActivity(long lastActivity)
void
startReading()
void
write(Frame frame)
-
-
-
Field Detail
-
LOGGER
private static final org.slf4j.Logger LOGGER
-
SOCKET_CLOSING_TIMEOUT
private static final int SOCKET_CLOSING_TIMEOUT
Time to linger before closing the socket forcefully.- See Also:
- Constant Field Values
-
channel
private final java.nio.channels.SocketChannel channel
-
writeQueue
private final NioQueue writeQueue
-
connection
private volatile AMQConnection connection
-
lastActivity
private long lastActivity
should be used only in the NIO read thread
-
writeSelectorState
private final SelectorHolder writeSelectorState
-
readSelectorState
private final SelectorHolder readSelectorState
-
ssl
final boolean ssl
-
sslEngine
final javax.net.ssl.SSLEngine sslEngine
-
plainOut
final java.nio.ByteBuffer plainOut
outbound app data (to be crypted if TLS is on)
-
plainIn
final java.nio.ByteBuffer plainIn
inbound app data (deciphered if TLS is on)
-
cipherOut
final java.nio.ByteBuffer cipherOut
outbound net data (ciphered if TLS is on)
-
cipherIn
final java.nio.ByteBuffer cipherIn
inbound data (ciphered if TLS is on)
-
outputStream
final java.io.DataOutputStream outputStream
-
frameBuilder
final FrameBuilder frameBuilder
-
-
Constructor Detail
-
SocketChannelFrameHandlerState
public SocketChannelFrameHandlerState(java.nio.channels.SocketChannel channel, NioLoopContext nioLoopsState, NioParams nioParams, javax.net.ssl.SSLEngine sslEngine, int maxFramePayloadSize)
-
-
Method Detail
-
getChannel
public java.nio.channels.SocketChannel getChannel()
-
getWriteQueue
public NioQueue getWriteQueue()
-
sendHeader
public void sendHeader() throws java.io.IOException
- Throws:
java.io.IOException
-
write
public void write(Frame frame) throws java.io.IOException
- Throws:
java.io.IOException
-
sendWriteRequest
private void sendWriteRequest(WriteRequest writeRequest) throws java.io.IOException
- Throws:
java.io.IOException
-
startReading
public void startReading()
-
getConnection
public AMQConnection getConnection()
-
setConnection
public void setConnection(AMQConnection connection)
-
setLastActivity
public void setLastActivity(long lastActivity)
-
getLastActivity
public long getLastActivity()
-
prepareForWriteSequence
void prepareForWriteSequence()
-
endWriteSequence
void endWriteSequence()
-
prepareForReadSequence
void prepareForReadSequence() throws java.io.IOException
- Throws:
java.io.IOException
-
continueReading
boolean continueReading() throws java.io.IOException
- Throws:
java.io.IOException
-
close
void close() throws java.io.IOException
- Throws:
java.io.IOException
-
-