session command print tunnel client connect status. #1576

pull/1585/head^2
hengyunabc 4 years ago
parent 709f088133
commit 85aa4f27b4

@ -35,6 +35,7 @@ public class SessionCommand extends AnnotatedCommand {
result.setAgentId(id);
}
result.setTunnelServer(tunnelClient.getTunnelServerUrl());
result.setTunnelConnected(tunnelClient.isConnected());
}
//statUrl

@ -13,6 +13,8 @@ public class SessionModel extends ResultModel {
private String tunnelServer;
private String statUrl;
private boolean tunnelConnected;
@Override
public String getType() {
return "session";
@ -57,4 +59,12 @@ public class SessionModel extends ResultModel {
public void setStatUrl(String statUrl) {
this.statUrl = statUrl;
}
public boolean isTunnelConnected() {
return tunnelConnected;
}
public void setTunnelConnected(boolean tunnelConnected) {
this.tunnelConnected = tunnelConnected;
}
}

@ -26,6 +26,7 @@ public class SessionView extends ResultView<SessionModel> {
}
if (result.getTunnelServer() != null) {
table.row("TUNNEL_SERVER", "" + result.getTunnelServer());
table.row("TUNNEL_CONNECTED", "" + result.isTunnelConnected());
}
if (result.getStatUrl() != null) {
table.row("STAT_URL", result.getStatUrl());

@ -61,6 +61,8 @@ public class TunnelClient {
*/
private String version = "unknown";
private volatile boolean connected = false;
public ChannelFuture start() throws IOException, InterruptedException, URISyntaxException {
return connect(false);
}
@ -190,4 +192,12 @@ public class TunnelClient {
public void setAppName(String appName) {
this.appName = appName;
}
public boolean isConnected() {
return connected;
}
public void setConnected(boolean connected) {
this.connected = connected;
}
}

@ -72,6 +72,7 @@ public class TunnelClientSocketClientHandler extends SimpleChannelInboundHandler
if (idList != null && !idList.isEmpty()) {
this.tunnelClient.setId(idList.get(0));
}
tunnelClient.setConnected(true);
registerPromise.setSuccess();
}
@ -137,6 +138,7 @@ public class TunnelClientSocketClientHandler extends SimpleChannelInboundHandler
@Override
public void channelUnregistered(final ChannelHandlerContext ctx) throws Exception {
tunnelClient.setConnected(false);
ctx.channel().eventLoop().schedule(new Runnable() {
@Override
public void run() {

Loading…
Cancel
Save