From b7cf6755f8891df612d851e13413b718e256be60 Mon Sep 17 00:00:00 2001 From: Andy Zhang <37402126+AnzhiZhang@users.noreply.github.com> Date: Thu, 11 May 2023 14:14:17 +0100 Subject: [PATCH] =?UTF-8?q?style:=20=F0=9F=8E=A8=20code=20style?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zhanganzhi/chathub/adaptors/IAdaptor.java | 27 +++++---- .../chathub/adaptors/kook/KookAPI.java | 9 +-- .../chathub/adaptors/kook/KookAdaptor.java | 29 +++++----- .../chathub/adaptors/kook/KookDaemon.java | 4 +- .../chathub/adaptors/kook/KookReceiver.java | 9 ++- .../adaptors/velocity/VelocityAdaptor.java | 56 +++++++++---------- .../zhanganzhi/chathub/command/Command.java | 10 ++-- .../com/zhanganzhi/chathub/core/EventHub.java | 24 ++++---- .../zhanganzhi/chathub/entity/Platform.java | 3 +- .../chathub/event/MessageEvent.java | 26 ++++----- .../chathub/event/ServerChangeEvent.java | 12 ++-- 11 files changed, 100 insertions(+), 109 deletions(-) diff --git a/src/main/java/com/zhanganzhi/chathub/adaptors/IAdaptor.java b/src/main/java/com/zhanganzhi/chathub/adaptors/IAdaptor.java index 2089461..fc93be7 100644 --- a/src/main/java/com/zhanganzhi/chathub/adaptors/IAdaptor.java +++ b/src/main/java/com/zhanganzhi/chathub/adaptors/IAdaptor.java @@ -5,14 +5,21 @@ import com.zhanganzhi.chathub.event.ServerChangeEvent; public interface IAdaptor { - public Platform getPlatform(); - public void onUserChat(MessageEvent event); - public void onJoinServer(ServerChangeEvent event); - public void onLeaveServer(ServerChangeEvent event); - public void onSwitchServer(ServerChangeEvent event); - public void sendListMessage(String source); - - public void start(); - public void stop(); - public void restart(); + Platform getPlatform(); + + void onUserChat(MessageEvent event); + + void onJoinServer(ServerChangeEvent event); + + void onLeaveServer(ServerChangeEvent event); + + void onSwitchServer(ServerChangeEvent event); + + void sendListMessage(String source); + + void start(); + + void stop(); + + void restart(); } diff --git a/src/main/java/com/zhanganzhi/chathub/adaptors/kook/KookAPI.java b/src/main/java/com/zhanganzhi/chathub/adaptors/kook/KookAPI.java index 9741bd6..bc9a143 100644 --- a/src/main/java/com/zhanganzhi/chathub/adaptors/kook/KookAPI.java +++ b/src/main/java/com/zhanganzhi/chathub/adaptors/kook/KookAPI.java @@ -2,16 +2,11 @@ import java.io.IOException; +import okhttp3.*; import com.alibaba.fastjson2.JSON; import com.alibaba.fastjson2.JSONObject; -import com.zhanganzhi.chathub.core.Config; -import okhttp3.MediaType; -import okhttp3.OkHttpClient; -import okhttp3.Request; -import okhttp3.RequestBody; -import okhttp3.Response; -import okhttp3.ResponseBody; +import com.zhanganzhi.chathub.core.Config; class KookAPI { private static KookAPI instance; diff --git a/src/main/java/com/zhanganzhi/chathub/adaptors/kook/KookAdaptor.java b/src/main/java/com/zhanganzhi/chathub/adaptors/kook/KookAdaptor.java index ed8fe20..596c694 100644 --- a/src/main/java/com/zhanganzhi/chathub/adaptors/kook/KookAdaptor.java +++ b/src/main/java/com/zhanganzhi/chathub/adaptors/kook/KookAdaptor.java @@ -2,6 +2,7 @@ import com.velocitypowered.api.proxy.Player; import com.velocitypowered.api.proxy.server.RegisteredServer; + import com.zhanganzhi.chathub.ChatHub; import com.zhanganzhi.chathub.adaptors.IAdaptor; import com.zhanganzhi.chathub.core.Config; @@ -14,7 +15,7 @@ public class KookAdaptor implements IAdaptor { private final Config config = Config.getInstance(); private final KookAPI kookAPI = KookAPI.getInstance(); private final ChatHub chatHub; - private static Platform platform = Platform.KOOK; + private final static Platform platform = Platform.KOOK; private final KookReceiver kookReceiver; private final KookDaemon kookDaemon; @@ -31,30 +32,30 @@ public Platform getPlatform() { @Override public void onUserChat(MessageEvent event) { - sendMessage(config.getKookChatMessage(event.getServerName(), event.user, event.content)); + sendMessage(config.getKookChatMessage(event.getServerName(), event.user(), event.content())); } @Override public void onJoinServer(ServerChangeEvent event) { sendMessage(config.getKookJoinMessage( - event.server, - event.player.getUsername() + event.server, + event.player.getUsername() )); } @Override public void onLeaveServer(ServerChangeEvent event) { sendMessage(config.getKookLeaveMessage( - event.player.getUsername() + event.player.getUsername() )); } @Override public void onSwitchServer(ServerChangeEvent event) { sendMessage(config.getKookSwitchMessage( - event.player.getUsername(), - event.serverPrev, - event.server + event.player.getUsername(), + event.serverPrev, + event.server )); } @@ -76,33 +77,33 @@ public void sendListMessage(String source) { } void sendMessage(String message) { - if(config.isKookEnabled()) { + if (config.isKookEnabled()) { new Thread(() -> kookAPI.sendMessage(message)).start(); } } @Override public void start() { - if(config.isKookEnabled()) { + if (config.isKookEnabled()) { chatHub.getLogger().info("Kook enabled"); kookReceiver.start(); - if(config.getKookDaemonEnabled()) + if (config.getKookDaemonEnabled()) kookDaemon.start(); } } @Override public void stop() { - if(config.isKookEnabled()) { + if (config.isKookEnabled()) { kookReceiver.shutdown(); - if(config.getKookDaemonEnabled()) + if (config.getKookDaemonEnabled()) kookDaemon.shutdown(); } } @Override public void restart() { - if(config.isKookEnabled()) { + if (config.isKookEnabled()) { kookReceiver.restart(); } } diff --git a/src/main/java/com/zhanganzhi/chathub/adaptors/kook/KookDaemon.java b/src/main/java/com/zhanganzhi/chathub/adaptors/kook/KookDaemon.java index 7c2f8a2..06e3fdb 100644 --- a/src/main/java/com/zhanganzhi/chathub/adaptors/kook/KookDaemon.java +++ b/src/main/java/com/zhanganzhi/chathub/adaptors/kook/KookDaemon.java @@ -1,6 +1,5 @@ package com.zhanganzhi.chathub.adaptors.kook; - import org.slf4j.Logger; import com.zhanganzhi.chathub.core.Config; @@ -12,7 +11,6 @@ public class KookDaemon extends Thread { private final KookReceiver kookReceiver; private boolean flag = true; - public KookDaemon(Logger logger, Config config, KookReceiver kookReceiver) { this.logger = logger; this.config = config; @@ -26,7 +24,7 @@ public void run() { boolean isBotOnline = kookAPI.checkBotOnline(); if (isBotOnline) { retryCount = 0; - } else if(retryCount < config.getKookDaemonRetry()) { + } else if (retryCount < config.getKookDaemonRetry()) { logger.info("Kook bot seems offline, re-check in " + config.getKookDaemonInterval() + " seconds..."); retryCount++; } else { diff --git a/src/main/java/com/zhanganzhi/chathub/adaptors/kook/KookReceiver.java b/src/main/java/com/zhanganzhi/chathub/adaptors/kook/KookReceiver.java index 35b5cf2..aed62a3 100644 --- a/src/main/java/com/zhanganzhi/chathub/adaptors/kook/KookReceiver.java +++ b/src/main/java/com/zhanganzhi/chathub/adaptors/kook/KookReceiver.java @@ -35,7 +35,6 @@ public KookReceiver(Logger logger, EventHub eventHub) { this.logger = logger; this.eventHub = eventHub; this.okHttpClient = new OkHttpClient(); - } public void start() { @@ -101,10 +100,10 @@ private void handleMessage(String text) { eventHub.getAdaptor(PLATFORM).sendListMessage(""); } else { eventHub.onUserChat(new MessageEvent( - PLATFORM, - null, - eventData.getJSONObject("extra").getJSONObject("author").getString("nickname"), - eventData.getJSONObject("extra").getJSONObject("kmarkdown").getString("raw_content") + PLATFORM, + null, + eventData.getJSONObject("extra").getJSONObject("author").getString("nickname"), + eventData.getJSONObject("extra").getJSONObject("kmarkdown").getString("raw_content") )); } } diff --git a/src/main/java/com/zhanganzhi/chathub/adaptors/velocity/VelocityAdaptor.java b/src/main/java/com/zhanganzhi/chathub/adaptors/velocity/VelocityAdaptor.java index 3e6663d..8b4208f 100644 --- a/src/main/java/com/zhanganzhi/chathub/adaptors/velocity/VelocityAdaptor.java +++ b/src/main/java/com/zhanganzhi/chathub/adaptors/velocity/VelocityAdaptor.java @@ -2,6 +2,7 @@ import java.util.Arrays; +import net.kyori.adventure.text.Component; import com.velocitypowered.api.event.Subscribe; import com.velocitypowered.api.event.connection.DisconnectEvent; import com.velocitypowered.api.event.player.PlayerChatEvent; @@ -9,6 +10,7 @@ import com.velocitypowered.api.proxy.Player; import com.velocitypowered.api.proxy.ProxyServer; import com.velocitypowered.api.proxy.server.RegisteredServer; + import com.zhanganzhi.chathub.ChatHub; import com.zhanganzhi.chathub.adaptors.IAdaptor; import com.zhanganzhi.chathub.core.Config; @@ -17,9 +19,7 @@ import com.zhanganzhi.chathub.event.MessageEvent; import com.zhanganzhi.chathub.event.ServerChangeEvent; -import net.kyori.adventure.text.Component; - -public class VelocityAdaptor implements IAdaptor{ +public class VelocityAdaptor implements IAdaptor { private static final Platform platform = Platform.VELOCITY; private final ProxyServer proxyServer; private final Config config = Config.getInstance(); @@ -53,15 +53,15 @@ private void sendMessage(Component component, String... ignoredServers) { @Override public void onUserChat(MessageEvent event) { - Arrays.stream(event.content.split("\n")).forEach(msg -> { - Component component = Component.text(config.getMinecraftChatMessage(event.getServerName(), event.user, msg)); + Arrays.stream(event.content().split("\n")).forEach(msg -> { + Component component = Component.text(config.getMinecraftChatMessage(event.getServerName(), event.user(), msg)); // check complete takeover mode for message from velocity - if(event.platform == Platform.VELOCITY && !config.isCompleteTakeoverMode()) { - sendMessage(component, event.server); + if (event.platform() == Platform.VELOCITY && !config.isCompleteTakeoverMode()) { + sendMessage(component, event.server()); return; } sendMessage(component); - }); + }); } @Override @@ -79,17 +79,16 @@ public void onSwitchServer(ServerChangeEvent event) { sendMessage(Component.text(config.getMinecraftSwitchMessage(event.player.getUsername(), event.serverPrev, event.server))); } - @Subscribe public void onPlayerChatEvent(PlayerChatEvent event) { Player player = event.getPlayer(); player.getCurrentServer().ifPresent( serverConnection -> { eventHub.onUserChat(new MessageEvent( - platform, - serverConnection.getServerInfo().getName(), - player.getUsername(), - event.getMessage()) + platform, + serverConnection.getServerInfo().getName(), + player.getUsername(), + event.getMessage()) ); // denied message if complete takeover mode enabled @@ -104,15 +103,9 @@ public void onPlayerChatEvent(PlayerChatEvent event) { public void onServerConnectedEvent(ServerConnectedEvent event) { ServerChangeEvent message = new ServerChangeEvent(event); switch (message.type) { - case JOIN: - eventHub.onJoinServer(message); - break; - case LEAVE: - eventHub.onLeaveServer(message); - break; - case SWITCH: - eventHub.onSwitchServer(message); - break; + case JOIN -> eventHub.onJoinServer(message); + case LEAVE -> eventHub.onLeaveServer(message); + case SWITCH -> eventHub.onSwitchServer(message); } } @@ -127,18 +120,21 @@ public void sendListMessage(String source) { for (RegisteredServer registeredServer : proxyServer.getAllServers()) { if (registeredServer.getPlayersConnected().size() > 0) { isListEmpty = false; - proxyServer.getPlayer(source) - .ifPresent(player -> player.sendMessage(Component.text( - config.getMinecraftListMessage( - registeredServer.getServerInfo().getName(), - registeredServer.getPlayersConnected().size(), - registeredServer.getPlayersConnected().stream().map(Player::getUsername).toArray(String[]::new) + proxyServer.getPlayer(source).ifPresent( + player -> player.sendMessage( + Component.text(config.getMinecraftListMessage( + registeredServer.getServerInfo().getName(), + registeredServer.getPlayersConnected().size(), + registeredServer.getPlayersConnected().stream().map(Player::getUsername).toArray(String[]::new) + )) ) - ))); + ); } } if (isListEmpty) { - proxyServer.getPlayer(source).ifPresent(player -> player.sendMessage(Component.text(config.getMinecraftListEmptyMessage()))); + proxyServer.getPlayer(source).ifPresent( + player -> player.sendMessage(Component.text(config.getMinecraftListEmptyMessage())) + ); } } diff --git a/src/main/java/com/zhanganzhi/chathub/command/Command.java b/src/main/java/com/zhanganzhi/chathub/command/Command.java index 7476869..cbaa539 100644 --- a/src/main/java/com/zhanganzhi/chathub/command/Command.java +++ b/src/main/java/com/zhanganzhi/chathub/command/Command.java @@ -79,13 +79,13 @@ public List suggest(final Invocation invocation) { String[] args = invocation.arguments(); if (args.length <= 1) { return Stream.of("list", "msg") - .filter(s -> s.startsWith(args.length > 0 ? args[0] : "")) - .collect(Collectors.toList()); + .filter(s -> s.startsWith(args.length > 0 ? args[0] : "")) + .collect(Collectors.toList()); } else if (args.length == 2 && args[0].equals("msg")) { return proxyServer.getAllPlayers() - .stream().map(Player::getUsername) - .filter(s -> s.startsWith(args[1])) - .collect(Collectors.toList()); + .stream().map(Player::getUsername) + .filter(s -> s.startsWith(args[1])) + .collect(Collectors.toList()); } else { return List.of(); } diff --git a/src/main/java/com/zhanganzhi/chathub/core/EventHub.java b/src/main/java/com/zhanganzhi/chathub/core/EventHub.java index 7b285f5..fc64ebb 100644 --- a/src/main/java/com/zhanganzhi/chathub/core/EventHub.java +++ b/src/main/java/com/zhanganzhi/chathub/core/EventHub.java @@ -15,8 +15,8 @@ public class EventHub { public EventHub(ChatHub chatHub) { adaptors = List.of( - new KookAdaptor(chatHub, this), - new VelocityAdaptor(chatHub, this) + new KookAdaptor(chatHub, this), + new VelocityAdaptor(chatHub, this) ); } @@ -26,28 +26,28 @@ public IAdaptor getAdaptor(Platform platform) { public void onUserChat(MessageEvent event) { // ignore messages from same platform, except velocity - adaptors.stream().filter(adaptor -> - event.platform == Platform.VELOCITY || event.platform != adaptor.getPlatform() - ).forEach(adaptor -> adaptor.onUserChat(event)); + adaptors.stream() + .filter(adaptor -> event.platform() == Platform.VELOCITY || event.platform() != adaptor.getPlatform()) + .forEach(adaptor -> adaptor.onUserChat(event)); } public void onJoinServer(ServerChangeEvent event) { - adaptors.stream().forEach(adaptor -> adaptor.onJoinServer(event)); + adaptors.forEach(adaptor -> adaptor.onJoinServer(event)); } public void onLeaveServer(ServerChangeEvent event) { - adaptors.stream().forEach(adaptor -> adaptor.onLeaveServer(event)); + adaptors.forEach(adaptor -> adaptor.onLeaveServer(event)); } public void onSwitchServer(ServerChangeEvent event) { - adaptors.stream().forEach(adaptor -> adaptor.onSwitchServer(event)); + adaptors.forEach(adaptor -> adaptor.onSwitchServer(event)); } - public void shutdown() { - adaptors.forEach(adaptor -> adaptor.stop()); - } + public void shutdown() { + adaptors.forEach(IAdaptor::stop); + } public void start() { - adaptors.forEach(adaptor -> adaptor.start()); + adaptors.forEach(IAdaptor::start); } } diff --git a/src/main/java/com/zhanganzhi/chathub/entity/Platform.java b/src/main/java/com/zhanganzhi/chathub/entity/Platform.java index 7fe1751..b01ed1c 100644 --- a/src/main/java/com/zhanganzhi/chathub/entity/Platform.java +++ b/src/main/java/com/zhanganzhi/chathub/entity/Platform.java @@ -5,7 +5,8 @@ public enum Platform { VELOCITY("velocity"); private final String name; - private Platform(String name) { + + Platform(String name) { this.name = name; } diff --git a/src/main/java/com/zhanganzhi/chathub/event/MessageEvent.java b/src/main/java/com/zhanganzhi/chathub/event/MessageEvent.java index 0424912..52f7988 100644 --- a/src/main/java/com/zhanganzhi/chathub/event/MessageEvent.java +++ b/src/main/java/com/zhanganzhi/chathub/event/MessageEvent.java @@ -2,23 +2,17 @@ import com.zhanganzhi.chathub.entity.Platform; -public class MessageEvent { - public final Platform platform; - public final String server; - public final String user; - public final String content; - - public MessageEvent(Platform platform, String server, String user, String content) { - this.platform = platform; - this.server = server; - this.user = user; - this.content = content; - } - - public String getServerName(){ - if (platform == Platform.VELOCITY){ +public record MessageEvent( + Platform platform, + String server, + String user, + String content +) { + public String getServerName() { + if (platform == Platform.VELOCITY) { return server; + } else { + return platform.getName(); } - return platform.getName(); } } diff --git a/src/main/java/com/zhanganzhi/chathub/event/ServerChangeEvent.java b/src/main/java/com/zhanganzhi/chathub/event/ServerChangeEvent.java index 70be29f..e7a27ea 100644 --- a/src/main/java/com/zhanganzhi/chathub/event/ServerChangeEvent.java +++ b/src/main/java/com/zhanganzhi/chathub/event/ServerChangeEvent.java @@ -1,11 +1,11 @@ package com.zhanganzhi.chathub.event; +import com.velocitypowered.api.proxy.Player; import com.velocitypowered.api.event.connection.DisconnectEvent; import com.velocitypowered.api.event.player.ServerConnectedEvent; -import com.velocitypowered.api.proxy.Player; public class ServerChangeEvent { - public static enum SwitchType { + public enum SwitchType { JOIN, LEAVE, SWITCH } @@ -18,7 +18,7 @@ public ServerChangeEvent(Player player, String serverPrev, String server) { this.player = player; this.serverPrev = serverPrev; this.server = server; - if(serverPrev != null) { + if (serverPrev != null) { this.type = SwitchType.SWITCH; } else if (server != null) { this.type = SwitchType.JOIN; @@ -29,9 +29,9 @@ public ServerChangeEvent(Player player, String serverPrev, String server) { public ServerChangeEvent(ServerConnectedEvent event) { this( - event.getPlayer(), - event.getPreviousServer().isPresent() ? event.getPreviousServer().get().getServerInfo().getName() : null, - event.getServer().getServerInfo().getName() + event.getPlayer(), + event.getPreviousServer().isPresent() ? event.getPreviousServer().get().getServerInfo().getName() : null, + event.getServer().getServerInfo().getName() ); }