Fix up some stuff

This commit is contained in:
Andrew Steinborn
2018-11-21 23:36:47 -05:00
parent 904e1367a2
commit 1515c5069b

View File

@@ -246,7 +246,8 @@ public class VelocityServer implements ProxyServer {
return false;
}
// Re-register servers. If we are replacing a server, we must evacuate players.
// Re-register servers. If a server is being replaced, make sure to note what players need to
// move back to a fallback server.
Collection<ConnectedPlayer> evacuate = new ArrayList<>();
for (Map.Entry<String, String> entry : newConfiguration.getServers().entrySet()) {
ServerInfo newInfo =
@@ -267,6 +268,8 @@ public class VelocityServer implements ProxyServer {
}
}
// If we had any players to evacuate, let's move them now. Wait until they are all moved off.
if (!evacuate.isEmpty()) {
CountDownLatch latch = new CountDownLatch(evacuate.size());
for (ConnectedPlayer player : evacuate) {
Optional<RegisteredServer> next = player.getNextServerToTry();
@@ -291,6 +294,7 @@ public class VelocityServer implements ProxyServer {
logger.error("Interrupted whilst moving players", e);
Thread.currentThread().interrupt();
}
}
// If we have a new bind address, bind to it
if (!configuration.getBind().equals(newConfiguration.getBind())) {