use of org.apache.dubbo.remoting.transport.ChannelHandlerAdapter in project dubbo by alibaba.
the class FileNetworkerTest method testJoin.
@Test
public void testJoin(@TempDir Path folder) throws RemotingException, InterruptedException {
final String groupURL = "file:///" + folder.getFileName().toAbsolutePath();
FileNetworker networker = new FileNetworker();
Group group = networker.lookup(URL.valueOf(groupURL));
final CountDownLatch countDownLatch = new CountDownLatch(1);
Peer peer1 = group.join(URL.valueOf("exchange://0.0.0.0:" + NetUtils.getAvailablePort() + "?exchanger=header"), new ChannelHandlerAdapter() {
@Override
public void received(Channel channel, Object message) {
countDownLatch.countDown();
}
});
Peer peer2 = group.join(URL.valueOf("exchange://0.0.0.0:" + NetUtils.getAvailablePort() + "?exchanger=header"), mock(ChannelHandlerAdapter.class));
while (true) {
long count = countDownLatch.getCount();
if (count > 0) {
break;
}
for (Channel channel : peer1.getChannels()) {
channel.send(0, false);
channel.send("hello world!");
}
TimeUnit.MILLISECONDS.sleep(50);
}
peer2.close();
peer1.close();
}
use of org.apache.dubbo.remoting.transport.ChannelHandlerAdapter in project dubbo by alibaba.
the class NettyTransporterTest method shouldAbleToBindNetty4.
@Test
public void shouldAbleToBindNetty4() throws Exception {
int port = NetUtils.getAvailablePort();
URL url = new URL("telnet", "localhost", port, new String[] { Constants.BIND_PORT_KEY, String.valueOf(port) });
RemotingServer server = new NettyTransporter().bind(url, new ChannelHandlerAdapter());
assertThat(server.isBound(), is(true));
}
Aggregations