diff --git a/src/main/java/com/hiczp/bilibili/api/live/socket/LiveClient.java b/src/main/java/com/hiczp/bilibili/api/live/socket/LiveClient.java index a4d6c33..f86b715 100644 --- a/src/main/java/com/hiczp/bilibili/api/live/socket/LiveClient.java +++ b/src/main/java/com/hiczp/bilibili/api/live/socket/LiveClient.java @@ -39,6 +39,10 @@ public class LiveClient implements Closeable { private EventLoopGroup eventLoopGroup; private Channel channel; + private void initEventBus() { + eventBus.register(new ConnectionCloseListener()); + } + public LiveClient(BilibiliServiceProvider bilibiliServiceProvider, long showRoomId) { this.bilibiliServiceProvider = bilibiliServiceProvider; this.showRoomId = showRoomId; @@ -53,10 +57,6 @@ public class LiveClient implements Closeable { initEventBus(); } - private void initEventBus() { - eventBus.register(this); - } - public synchronized LiveClient connect() throws IOException { if (channel != null && channel.isActive()) { LOGGER.warn("Already connected to server, connect method can not be invoked twice"); @@ -130,9 +130,11 @@ public class LiveClient implements Closeable { } } - @Subscribe - public void onConnectionClose(ConnectionCloseEvent connectionCloseEvent) { - eventLoopGroup.shutdownGracefully(); + private class ConnectionCloseListener { + @Subscribe + public void onConnectionClose(ConnectionCloseEvent connectionCloseEvent) { + eventLoopGroup.shutdownGracefully(); + } } public EventBus getEventBus() {