+ void remove(final CallHomeSessionContext session) {
+ sessions.remove(session.getSessionId(), session);
+ }
+ }
+
+ static class SshWriteAsyncHandlerAdapter extends ChannelOutboundHandlerAdapter {
+ private final AsyncSshHandlerWriter sshWriteAsyncHandler;
+ private final ClientChannel sshChannel;
+
+ SshWriteAsyncHandlerAdapter(final ClientChannel sshChannel) {
+ this.sshChannel = sshChannel;
+ sshWriteAsyncHandler = new AsyncSshHandlerWriter(sshChannel.getAsyncIn());
+ }
+
+ @Override
+ public void write(final ChannelHandlerContext ctx, final Object msg, final ChannelPromise promise) {
+ sshWriteAsyncHandler.write(ctx, msg, promise);
+ }
+
+ public ClientChannel getSshChannel() {
+ return sshChannel;