public abstract class HeartAbleConnectionListener<T> extends Object implements JConnectionIdleListener<T>
| 限定符和类型 | 类和说明 |
|---|---|
static class |
HeartAbleConnectionListener.HeartConfig
心跳配置
|
| 限定符和类型 | 字段和说明 |
|---|---|
protected org.slf4j.Logger |
_log |
static long |
DEFAULT_HEART_INTERVAL_MILLS
默认心跳验证间隔(仅当空闲时)
|
| 构造器和说明 |
|---|
HeartAbleConnectionListener() |
| 限定符和类型 | 方法和说明 |
|---|---|
protected boolean |
autoResponseHeartReq(T req,
JConnection connection)
自动回复心跳请求
|
protected boolean |
autoShieldHeartRsp(T rsp,
JConnection connection)
自动屏蔽心跳回复
|
void |
connectionClosed(JConnection connection) |
void |
connectionOpened(JConnection connection) |
protected abstract void |
doSendHeartReq(JConnection connection)
发送心跳请求
|
protected abstract void |
doSendHeartRsp(JConnection connection)
发送心跳回复
|
void |
event_AllIdleTimeOut(JConnection connection)
读写空闲超时事件
|
void |
event_ReadIdleTimeOut(JConnection connection)
读空闲超时
|
void |
event_WriteIdleTimeOut(JConnection connection)
写空闲超时
|
long |
getAllIdleTimeMills()
3秒读超时+5秒写超时=8秒没有读写就触发读写超时
|
protected HeartAbleConnectionListener.HeartConfig |
getHeartConfig(JConnection connection)
获取链路心跳配置
|
long |
getReaderIdleTimeMills()
读超时
|
long |
getWriterIdleTimeMills()
写超时
|
boolean |
isGlobalHeartEnable() |
protected abstract boolean |
isHeartReq(T msg)
是否是心跳请求
|
protected abstract boolean |
isHeartRsp(T msg)
是否是心跳回复
|
void |
messageArrived(JConnection conn,
T msg) |
protected void |
onAllIdleTimeOut(JConnection connection)
读写超时
|
protected abstract void |
onConnectionClosed(JConnection connection) |
protected abstract void |
onConnectionOpened(JConnection connection) |
protected void |
onHeartConfigInit(JConnection connection) |
protected abstract void |
onMessageArrived(JConnection conn,
T msg)
处理收到的消息
|
protected void |
onReadTimeOutContLimit(JConnection connection)
当读超时达次数到上限则默认关闭连接
|
protected void |
resetHeartReadTimeOut(JConnection conn)
重置心跳发送序号
|
void |
setGlobalHeartEnable(boolean heartEnable) |
protected void |
setHeartConfig(JConnection connection,
HeartAbleConnectionListener.HeartConfig heartConfig)
设置链路心跳配置
|
protected final org.slf4j.Logger _log
public static final long DEFAULT_HEART_INTERVAL_MILLS
public boolean isGlobalHeartEnable()
public final void setGlobalHeartEnable(boolean heartEnable)
protected final HeartAbleConnectionListener.HeartConfig getHeartConfig(JConnection connection)
connection - protected final void setHeartConfig(JConnection connection, HeartAbleConnectionListener.HeartConfig heartConfig)
connection - public final void event_AllIdleTimeOut(JConnection connection)
JConnectionIdleListenerevent_AllIdleTimeOut 在接口中 JConnectionIdleListener<T>public final void event_ReadIdleTimeOut(JConnection connection)
JConnectionIdleListenerevent_ReadIdleTimeOut 在接口中 JConnectionIdleListener<T>protected void onReadTimeOutContLimit(JConnection connection)
connection - protected void onAllIdleTimeOut(JConnection connection)
connection - public final void event_WriteIdleTimeOut(JConnection connection)
JConnectionIdleListenerevent_WriteIdleTimeOut 在接口中 JConnectionIdleListener<T>public final void messageArrived(JConnection conn, T msg)
messageArrived 在接口中 JConnectionIdleListener<T>messageArrived 在接口中 JConnectionListener<T>public final void connectionOpened(JConnection connection)
connectionOpened 在接口中 JConnectionIdleListener<T>connectionOpened 在接口中 JConnectionListener<T>public final void connectionClosed(JConnection connection)
connectionClosed 在接口中 JConnectionIdleListener<T>connectionClosed 在接口中 JConnectionListener<T>protected final void resetHeartReadTimeOut(JConnection conn)
conn - public long getWriterIdleTimeMills()
getWriterIdleTimeMills 在接口中 JConnectionIdleListener<T>public long getReaderIdleTimeMills()
getReaderIdleTimeMills 在接口中 JConnectionIdleListener<T>public long getAllIdleTimeMills()
getAllIdleTimeMills 在接口中 JConnectionIdleListener<T>protected boolean autoResponseHeartReq(T req, JConnection connection)
req - connection - protected boolean autoShieldHeartRsp(T rsp, JConnection connection)
rsp - connection - protected abstract void doSendHeartReq(JConnection connection)
protected abstract void doSendHeartRsp(JConnection connection)
protected abstract boolean isHeartReq(T msg)
msg - protected abstract boolean isHeartRsp(T msg)
msg - protected void onHeartConfigInit(JConnection connection)
protected abstract void onMessageArrived(JConnection conn, T msg)
conn - msg - protected abstract void onConnectionOpened(JConnection connection)
protected abstract void onConnectionClosed(JConnection connection)
Copyright © 2020. All rights reserved.