NettyClient extends AbstractNetClient { public NettyClient(Attribute attribute, HodorChannelHandler channelHandler) { super(attribute, channelHandler); this.bootstrap = new Bootstrap(); this.channelHandler = new NettyChannelHandler(attribute, channelHandler); } NettyClient(Attribute attribute, HodorChannelHandler channelHandler); @Override @SneakyThrows void connection();  }
@Test public void testNettyClient() { Attribute attribute = new Attribute(); attribute.put(RemotingConst.HOST_KEY, "127.0.0.1"); attribute.put(RemotingConst.PORT_KEY, 8080); HodorChannelHandler handler = new HodorClientChannelHandler(); NetClientTransport clientTransport = ExtensionLoader.getExtensionLoader(NetClientTransport.class).getDefaultJoin(); NetClient client = clientTransport.connect(attribute, handler); client.connection(); }