二、SocketContext

2. 异步通信基础使用说明

由于基于 AIO 和 NIO 通信的服务端类、客户端类、会话类暴露的方法都是相同,这里就只作一次说明,以下代码中可以使用 A 和 N,分别代表 AioServerSocket 和 NioServerSocket。以下其他类似函数中号的使用是类似的。
2.1 Socket连接上下文类

org.voovan.network.SocketContext


在以下2.1.2和2.1.3中讲解的类均继承于这个基类
  1. public SocketContext(String host,int port,int readTimeout)
  • 构造一个Socket服务端类。
  • host: 服务发布地址。
  • port: 服务发布端口。
  • readTimeout: 读取超时时间。
  1. public Chain<IoFilter> filterChain()
  • 获取过滤器链。
  • 返回值: 过滤器链,可以通过这个过滤器链来管理过滤器。
  1. public IoHandler handler()
  • 获取业务处理句柄。
  • 返回值: 业务处理句柄。
  1. public void handler(IoHandler handler)
  • 设置消息粘包分割器。
  • handler: 消息粘包分割器。
  1. public MessageSplitter messageSplitter()
  • 获取消息粘包分割器。
  • 返回值: 消息粘包分割器。
  1. public void messageSplitter(MessageSplitter messageSplitter)
  • 设置业务处理句柄。
  • handler: 业务处理句柄。
  1. public ConnectModel getConnectModel()
  • 获取连接模式。
  • 返回值: 连接模式
    • ConnectModel.SERVER: 服务模式,这个连接由 SocketServer 的 Accept 发起的连接。
    • ConnectModel.CLIENT: 客户端模式,这个连接由 SocketClient 直接发起的连接。
  1. public String getHost()
  • 获取当前Host地址。
  • 返回值: 当前Host地址。
  1. public int getPort()
  • 获取当前Port端口号。
  • 返回值: 当前Port端口号。
  1. public int getReadTimeout()
  • 获取当前超时时间。
  • 返回值: 当前超时时间。