diff --git a/common/src/main/java/eu/mhsl/craftattack/spawn/common/api/CraftAttackApi.java b/common/src/main/java/eu/mhsl/craftattack/spawn/common/api/CraftAttackApi.java index ce54750..3828040 100644 --- a/common/src/main/java/eu/mhsl/craftattack/spawn/common/api/CraftAttackApi.java +++ b/common/src/main/java/eu/mhsl/craftattack/spawn/common/api/CraftAttackApi.java @@ -6,6 +6,7 @@ import org.bukkit.configuration.ConfigurationSection; import java.net.URI; import java.net.URISyntaxException; +import java.net.http.HttpRequest; import java.util.Objects; public class CraftAttackApi { @@ -25,4 +26,8 @@ public class CraftAttackApi { public static void withAuthorizationSecret(URIBuilder builder) { builder.addParameter("secret", apiSecret); } + + public static void withAuthorizationHeader(HttpRequest.Builder builder) { + builder.header("Authorization", apiSecret); + } } diff --git a/common/src/main/java/eu/mhsl/craftattack/spawn/common/api/repositories/CraftAttackReportRepository.java b/common/src/main/java/eu/mhsl/craftattack/spawn/common/api/repositories/CraftAttackReportRepository.java index e2bc7b7..46723f5 100644 --- a/common/src/main/java/eu/mhsl/craftattack/spawn/common/api/repositories/CraftAttackReportRepository.java +++ b/common/src/main/java/eu/mhsl/craftattack/spawn/common/api/repositories/CraftAttackReportRepository.java @@ -6,7 +6,7 @@ import java.util.UUID; public class CraftAttackReportRepository extends ReportRepository { public CraftAttackReportRepository() { - super(CraftAttackApi.getBaseUri(), new RequestModifier(CraftAttackApi::withAuthorizationSecret, null)); + super(CraftAttackApi.getBaseUri(), new RequestModifier(null, CraftAttackApi::withAuthorizationHeader)); } public ReqResp queryReports(UUID player) { diff --git a/common/src/main/java/eu/mhsl/craftattack/spawn/common/appliances/tooling/playerlimit/PlayerLimiterListener.java b/common/src/main/java/eu/mhsl/craftattack/spawn/common/appliances/tooling/playerlimit/PlayerLimiterListener.java index 9af9203..12a9970 100644 --- a/common/src/main/java/eu/mhsl/craftattack/spawn/common/appliances/tooling/playerlimit/PlayerLimiterListener.java +++ b/common/src/main/java/eu/mhsl/craftattack/spawn/common/appliances/tooling/playerlimit/PlayerLimiterListener.java @@ -9,16 +9,16 @@ import org.bukkit.event.player.AsyncPlayerPreLoginEvent; class PlayerLimiterListener extends ApplianceListener { @EventHandler public void onLogin(AsyncPlayerPreLoginEvent playerPreLoginEvent) { - playerPreLoginEvent.kickMessage( - new DisconnectInfo( - "Hohe Serverauslastung", - "Der Server ist momentan an seiner Kapazitätsgrenze angelangt!", - "Bitte versuche es zu einem späteren Zeitpunkt erneut.", - playerPreLoginEvent.getUniqueId() - ).getComponent() - ); - - if(Bukkit.getOnlinePlayers().size() >= this.getAppliance().getLimit()) + if(Bukkit.getOnlinePlayers().size() >= this.getAppliance().getLimit()) { + playerPreLoginEvent.kickMessage( + new DisconnectInfo( + "Hohe Serverauslastung", + "Der Server ist momentan an seiner Kapazitätsgrenze angelangt!", + "Bitte versuche es zu einem späteren Zeitpunkt erneut.", + playerPreLoginEvent.getUniqueId() + ).getComponent() + ); playerPreLoginEvent.setLoginResult(AsyncPlayerPreLoginEvent.Result.KICK_FULL); + } } } diff --git a/craftattack/src/main/java/eu/mhsl/craftattack/spawn/craftattack/api/repositories/FeedbackRepository.java b/craftattack/src/main/java/eu/mhsl/craftattack/spawn/craftattack/api/repositories/FeedbackRepository.java index c1c4da5..d8243a9 100644 --- a/craftattack/src/main/java/eu/mhsl/craftattack/spawn/craftattack/api/repositories/FeedbackRepository.java +++ b/craftattack/src/main/java/eu/mhsl/craftattack/spawn/craftattack/api/repositories/FeedbackRepository.java @@ -12,7 +12,7 @@ import java.util.UUID; public class FeedbackRepository extends HttpRepository { public FeedbackRepository() { - super(CraftAttackApi.getBaseUri(), new RequestModifier(CraftAttackApi::withAuthorizationSecret, null)); + super(CraftAttackApi.getBaseUri(), new RequestModifier(null, CraftAttackApi::withAuthorizationHeader)); } public record Request(String event, List users) { diff --git a/craftattack/src/main/java/eu/mhsl/craftattack/spawn/craftattack/api/repositories/WhitelistRepository.java b/craftattack/src/main/java/eu/mhsl/craftattack/spawn/craftattack/api/repositories/WhitelistRepository.java index 1dd100e..8e3eda4 100644 --- a/craftattack/src/main/java/eu/mhsl/craftattack/spawn/craftattack/api/repositories/WhitelistRepository.java +++ b/craftattack/src/main/java/eu/mhsl/craftattack/spawn/craftattack/api/repositories/WhitelistRepository.java @@ -8,7 +8,7 @@ import java.util.UUID; public class WhitelistRepository extends HttpRepository { public WhitelistRepository() { - super(CraftAttackApi.getBaseUri(), new RequestModifier(CraftAttackApi::withAuthorizationSecret, null)); + super(CraftAttackApi.getBaseUri(), new RequestModifier(null, CraftAttackApi::withAuthorizationHeader)); } public record UserData( @@ -21,10 +21,12 @@ public class WhitelistRepository extends HttpRepository { ) { } + private record UserQuery(UUID uuid) {} + public ReqResp getUserData(UUID userId) { - return this.get( - "user", - parameters -> parameters.addParameter("uuid", userId.toString()), + return this.post( + "player", + new UserQuery(userId), UserData.class ); } diff --git a/craftattack/src/main/java/eu/mhsl/craftattack/spawn/craftattack/appliances/tooling/whitelist/Whitelist.java b/craftattack/src/main/java/eu/mhsl/craftattack/spawn/craftattack/appliances/tooling/whitelist/Whitelist.java index ee82c86..be76411 100644 --- a/craftattack/src/main/java/eu/mhsl/craftattack/spawn/craftattack/appliances/tooling/whitelist/Whitelist.java +++ b/craftattack/src/main/java/eu/mhsl/craftattack/spawn/craftattack/appliances/tooling/whitelist/Whitelist.java @@ -118,7 +118,7 @@ public class Whitelist extends Appliance { ); if(response.status() != HttpStatus.OK) - throw new IllegalStateException(String.format("Http Reponse %d", response.status())); + throw new IllegalStateException(String.format("Unwanted response %d!", response.status())); return response.data(); }