Add shutdown methods to ProxyServer

This commit is contained in:
Alexander Staeding
2020-07-30 21:48:58 +02:00
parent e3a95b4783
commit 190bef375a
2 changed files with 23 additions and 0 deletions

View File

@@ -19,6 +19,7 @@ import java.util.Optional;
import java.util.UUID; import java.util.UUID;
import net.kyori.adventure.audience.Audience; import net.kyori.adventure.audience.Audience;
import net.kyori.adventure.text.Component; import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.TextComponent;
import org.checkerframework.checker.nullness.qual.NonNull; import org.checkerframework.checker.nullness.qual.NonNull;
/** /**
@@ -26,6 +27,18 @@ import org.checkerframework.checker.nullness.qual.NonNull;
*/ */
public interface ProxyServer extends Audience { public interface ProxyServer extends Audience {
/**
* Shuts down the proxy, kicking players with the specified {@param reason}.
*
* @param reason message to kick online players with
*/
void shutdown(TextComponent reason);
/**
* Shuts down the proxy, kicking players with the default reason.
*/
void shutdown();
/** /**
* Retrieves the player currently connected to this proxy by their Minecraft username. The search * Retrieves the player currently connected to this proxy by their Minecraft username. The search
* is case-insensitive. * is case-insensitive.

View File

@@ -453,6 +453,16 @@ public class VelocityServer implements ProxyServer, ForwardingAudience {
shutdown(explicitExit, TextComponent.of("Proxy shutting down.")); shutdown(explicitExit, TextComponent.of("Proxy shutting down."));
} }
@Override
public void shutdown(TextComponent reason) {
shutdown(true, reason);
}
@Override
public void shutdown() {
shutdown(true);
}
public AsyncHttpClient getAsyncHttpClient() { public AsyncHttpClient getAsyncHttpClient() {
return cm.getHttpClient(); return cm.getHttpClient();
} }