package com.walker.tcp;
public interface Connection {
/**
* 通道ID,这个是java系统连接通道提供的全局唯一ChannelId
* @return
*/
String getId();
/**
* 连接名称,这个也是系统唯一的,通常由业务定义或者绑定。如:卡号、设备终端IMEI等
* @return
*/
String getName();
void setName(String name);
long getCreateTimeMills();
boolean supportLongConnection();
/**
* 如果是长连接模式,返回该连接是否被业务认证。如果未认证就无法使用
* @return
*/
boolean isAuthenticated();
/**
* 当前是否空闲
* @return
*/
boolean isIdle();
Request> read();
void write(Response> response);
/**
* 服务端强制断开连接
*/
void disconnect();
/**
* 获得该连接对应的引擎ID,通常一个项目中可能存在多种服务,每个服务对应一个服务引擎。
目前在聊天模块中,多主机部署通过消息方式推送,主机信息是队列的一部分,通过对方连接的主机知道消息如何被路由接收。
* @return * @date 2023-09-19 */ String getConnectionHost(); void setConnectionHost(String connectionHost); int getAlreadyLogin(); }