| Package | Description |
|---|---|
| org.voovan.network | |
| org.voovan.network.aio | |
| org.voovan.network.filter | |
| org.voovan.network.handler | |
| org.voovan.network.messagesplitter | |
| org.voovan.network.nio | |
| org.voovan.network.udp |
| Modifier and Type | Method and Description |
|---|---|
IoSession |
Event.getSession() |
| Modifier and Type | Method and Description |
|---|---|
static HeartBeat |
HeartBeat.attachSession(IoSession session,
ConnectModel connectModel)
将心跳绑定到 Session
默认使用 PING, PONG 作为心跳消息
|
static HeartBeat |
HeartBeat.attachSession(IoSession session,
ConnectModel connectModel,
String ping,
String pong)
将心跳绑定到 Session
|
static boolean |
HeartBeat.beat(IoSession session)
一次心跳动作
|
int |
MessageSplitter.canSplite(IoSession session,
ByteBuffer byteBuffer)
判断消息是否可分割
分割处理: 这个时候返回长度需要大于 0, 这个时候 session.getByteBuffer 中的数据会被分割, 然后传递给 IoFilter
流式处理: 用户 http/1.1 等协议解析, 这个时候返回长度需要等于0, 则数据不会被分割, 所有数据都在 session.getByteBuffer 中, 这个时候数据可以在 IoFilter 中进行处理,
这个时候 IoFilter 接收到的是一个容量为 0 的 bytebuffer
|
SSLParser |
SSLManager.createClientSSLParser(IoSession session)
获取SSLParser
|
SSLParser |
SSLManager.createServerSSLParser(IoSession session)
获取Server 模式 SSLParser
|
Object |
IoFilter.decode(IoSession session,
Object object)
过滤器解密函数,接收事件(onRecive)前调用
onRecive事件前调用
|
static Object |
EventProcess.doRecive(IoSession session,
int splitLength)
接收的消息处理函数
|
Object |
IoFilter.encode(IoSession session,
Object object)
过滤器加密函数,发送事件(onSend)前调用
send事件前调用
|
static Object |
EventProcess.filterDecoder(IoSession session,
ByteBuffer readedBuffer)
使用过滤器过滤解码结果
|
static ByteBuffer |
EventProcess.filterEncoder(IoSession session,
Object result)
使用过滤器编码结果
|
static void |
EventTrigger.fireAccept(IoSession session) |
static void |
EventTrigger.fireAcceptThread(IoSession session) |
static void |
EventTrigger.fireConnect(IoSession session) |
static void |
EventTrigger.fireConnectThread(IoSession session) |
static void |
EventTrigger.fireDisconnect(IoSession session) |
static void |
EventTrigger.fireDisconnectThread(IoSession session) |
static void |
EventTrigger.fireEvent(IoSession session,
Event.EventName name,
Object other)
事件触发
根据事件启动 EventThread 来处理事件
|
static void |
EventTrigger.fireEventThread(IoSession session,
Event.EventName name,
Object other)
事件触发
根据事件启动 EventThread 来处理事件
|
static void |
EventTrigger.fireException(IoSession session,
Exception exception) |
static void |
EventTrigger.fireExceptionThread(IoSession session,
Exception exception) |
static void |
EventTrigger.fireFlush(IoSession session,
List<Object> flushedObjects) |
static void |
EventTrigger.fireFlushThread(IoSession session,
List<Object> flushedObjects) |
static void |
EventTrigger.fireIdle(IoSession session) |
static void |
EventTrigger.fireIdleThread(IoSession session) |
static void |
EventTrigger.fireReceive(IoSession session) |
static void |
EventTrigger.fireReceiveThread(IoSession session) |
static void |
EventTrigger.fireSent(IoSession session,
Object obj) |
static void |
EventTrigger.fireSentThread(IoSession session,
Object obj) |
static Event |
Event.getInstance(IoSession session,
Event.EventName name,
Object other)
活的新的实例
|
void |
EventThread.init(IoSession session,
Event.EventName name,
Object other) |
void |
Event.init(IoSession session,
Event.EventName name,
Object other)
构造函数
|
protected void |
SocketContext.initSSL(IoSession session) |
static void |
HeartBeat.interceptHeartBeat(IoSession session,
ByteBufferChannel byteBufferChannel)
截断心跳消息
|
static boolean |
SSLParser.isHandShakeDone(IoSession session) |
static ByteBuffer |
EventProcess.loadSplitData(IoSession session,
int splitLength) |
Object |
IoHandler.onConnect(IoSession session)
连接成功事件
|
void |
IoHandler.onDisconnect(IoSession session)
连接断开事件
|
void |
IoHandler.onException(IoSession session,
Exception e)
异常事件
|
void |
IoHandler.onFlush(IoSession session,
List<Object> flushedObjects)
Socket 缓冲区发送事件
|
void |
IoHandler.onIdle(IoSession session)
空闲事件
|
Object |
IoHandler.onReceive(IoSession session,
Object obj)
接收数据事件
|
void |
IoHandler.onSent(IoSession session,
Object obj)
发送数据事件
发送后调用
|
static void |
EventProcess.sendMessage(IoSession session,
Object obj)
在一个独立的线程中并行的发送消息
|
void |
Event.setSession(IoSession session) |
int |
SSLParser.unWarpByteBufferChannel(IoSession session,
ByteBufferChannel netByteBufferChannel,
ByteBufferChannel appByteBufferChannel)
读取SSL消息到缓冲区
|
protected void |
SocketContext.waitConnected(IoSession session)
等待连接完成
|
| Constructor and Description |
|---|
Event(IoSession session,
Event.EventName name,
Object other)
构造函数
|
EventThread(IoSession session,
Event.EventName name,
Object other)
事件处理 Thread
|
MessageLoader(IoSession session)
构造函数
|
SSLParser(SSLEngine engine,
IoSession session)
构造函数
|
| Modifier and Type | Class and Description |
|---|---|
class |
AioSession
NIO 会话连接对象
|
| Modifier and Type | Method and Description |
|---|---|
Object |
CipherFilter.decode(IoSession session,
Object object) |
Object |
ByteFilter.decode(IoSession session,
Object object) |
Object |
StringFilter.decode(IoSession session,
Object object) |
Object |
ZipFilter.decode(IoSession session,
Object object) |
Object |
CipherFilter.encode(IoSession session,
Object object) |
Object |
ByteFilter.encode(IoSession session,
Object object) |
Object |
StringFilter.encode(IoSession session,
Object object) |
Object |
ZipFilter.encode(IoSession session,
Object object) |
| Modifier and Type | Method and Description |
|---|---|
Object |
SynchronousHandler.onConnect(IoSession session) |
void |
SynchronousHandler.onDisconnect(IoSession session) |
void |
SynchronousHandler.onException(IoSession session,
Exception e) |
void |
SynchronousHandler.onFlush(IoSession session,
List<Object> obj) |
void |
SynchronousHandler.onIdle(IoSession session) |
Object |
SynchronousHandler.onReceive(IoSession session,
Object obj) |
void |
SynchronousHandler.onSent(IoSession session,
Object obj) |
| Modifier and Type | Method and Description |
|---|---|
int |
LineMessageSplitter.canSplite(IoSession session,
ByteBuffer byteBuffer) |
int |
BufferLengthSplitter.canSplite(IoSession session,
ByteBuffer byteBuffer) |
int |
TransferSplitter.canSplite(IoSession session,
ByteBuffer byteBuffer) |
int |
ByteMessageSpliter.canSplite(IoSession session,
ByteBuffer byteBuffer) |
int |
TimeOutMesssageSplitter.canSplite(IoSession session,
ByteBuffer byteBuffer) |
| Modifier and Type | Class and Description |
|---|---|
class |
NioSession
NIO 会话连接对象
|
| Modifier and Type | Class and Description |
|---|---|
class |
UdpSession
UDP NIO 会话连接对象
|
Copyright © 2019 Voovan. All rights reserved.