public abstract class AbstractNettyClient extends Object implements JNetClient
| 限定符和类型 | 字段和说明 |
|---|---|
protected boolean |
reconect |
protected net.jueb.util4j.net.nettyImpl.client.AbstractNettyClient.ReconectListener |
reconectListener |
protected InetSocketAddress |
target |
protected long |
timeMills |
| 构造器和说明 |
|---|
AbstractNettyClient(InetSocketAddress target) |
| 限定符和类型 | 方法和说明 |
|---|---|
protected boolean |
connect(InetSocketAddress target,
boolean reconect)
执行连接调用
executeBooterConnect(InetSocketAddress target)
执行多次会把channel顶掉 |
void |
disableReconnect()
禁用断线重连
|
protected abstract io.netty.channel.ChannelFuture |
doConnect(InetSocketAddress target)
调用启动器发起连接
|
protected void |
doReconect()
执行重连 timer.schedule(new ReConnectTask(), reconectTimeOut);
执行多次会把channel顶掉
|
void |
enableReconnect(ScheduledExecutorService executor,
long timeMills)
开启断线重连
|
void |
flush()
发出缓冲区所有数据
|
protected abstract io.netty.bootstrap.Bootstrap |
getBooter()
获取客户端使用的起动器
|
io.netty.channel.Channel |
getChannel() |
protected abstract io.netty.channel.EventLoopGroup |
getIoWorkers()
获取客户端使用的IO线程池
|
String |
getName() |
protected ScheduledExecutorService |
getReconnectExecutor() |
long |
getReconnectTimeMills() |
InetSocketAddress |
getTarget() |
boolean |
isConnected() |
boolean |
isReconnect() |
void |
sendData(byte[] data)
发送数据,但不flush
|
void |
sendObject(Object obj)
发送数据,但不flush
|
protected void |
setChannel(io.netty.channel.Channel channel) |
void |
setName(String name) |
void |
start() |
void |
stop() |
protected volatile boolean reconect
protected long timeMills
protected final InetSocketAddress target
protected final net.jueb.util4j.net.nettyImpl.client.AbstractNettyClient.ReconectListener reconectListener
public AbstractNettyClient(InetSocketAddress target)
protected abstract io.netty.bootstrap.Bootstrap getBooter()
protected abstract io.netty.channel.EventLoopGroup getIoWorkers()
protected final ScheduledExecutorService getReconnectExecutor()
protected final boolean connect(InetSocketAddress target, boolean reconect)
executeBooterConnect(InetSocketAddress target)
执行多次会把channel顶掉target - protected abstract io.netty.channel.ChannelFuture doConnect(InetSocketAddress target)
target - public final io.netty.channel.Channel getChannel()
protected final void setChannel(io.netty.channel.Channel channel)
protected final void doReconect()
public final void start()
start 在接口中 JNetClientpublic final void stop()
stop 在接口中 JNetClientpublic boolean isConnected()
isConnected 在接口中 JNetClientpublic void disableReconnect()
JNetClientdisableReconnect 在接口中 JNetClientpublic final void enableReconnect(ScheduledExecutorService executor, long timeMills)
JNetClientenableReconnect 在接口中 JNetClientexecutor - 断线重连调度服务器timeMills - 间隔public final long getReconnectTimeMills()
getReconnectTimeMills 在接口中 JNetClientpublic final boolean isReconnect()
isReconnect 在接口中 JNetClientpublic final String getName()
getName 在接口中 JNetClientpublic final void setName(String name)
setName 在接口中 JNetClientpublic final InetSocketAddress getTarget()
getTarget 在接口中 JNetClientpublic void sendData(byte[] data)
sendData 在接口中 JNetClientpublic void sendObject(Object obj)
sendObject 在接口中 JNetClientpublic void flush()
flush 在接口中 JNetClientCopyright © 2020. All rights reserved.