refactored event hierarchy; replaced SpawnEvent with direct Event implementation, added StrikeUpdateListener and refactored whitelist profile update logic
This commit is contained in:
@@ -1,6 +1,20 @@
|
||||
package eu.mhsl.craftattack.spawn.core.event;
|
||||
|
||||
public class ReportCreatedEvent extends SpawnEvent {
|
||||
import org.bukkit.event.Event;
|
||||
import org.bukkit.event.HandlerList;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class ReportCreatedEvent extends Event {
|
||||
private static final HandlerList HANDLERS = new HandlerList();
|
||||
@Override
|
||||
public @NotNull HandlerList getHandlers() {
|
||||
return HANDLERS;
|
||||
}
|
||||
|
||||
public static HandlerList getHandlerList() {
|
||||
return HANDLERS;
|
||||
}
|
||||
|
||||
public record CreatedReport(String reporter, String reported, String reason) {}
|
||||
|
||||
private final CreatedReport report;
|
||||
|
||||
@@ -2,21 +2,9 @@ package eu.mhsl.craftattack.spawn.core.event;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.event.Event;
|
||||
import org.bukkit.event.HandlerList;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public abstract class SpawnEvent extends Event {
|
||||
private static final HandlerList HANDLERS = new HandlerList();
|
||||
@Override
|
||||
public @NotNull HandlerList getHandlers() {
|
||||
return HANDLERS;
|
||||
}
|
||||
|
||||
public static void call(SpawnEvent event) {
|
||||
public abstract class SpawnEvent {
|
||||
public static void call(Event event) {
|
||||
Bukkit.getPluginManager().callEvent(event);
|
||||
}
|
||||
|
||||
public SpawnEvent(boolean isAsync) {
|
||||
super(isAsync);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,8 +1,22 @@
|
||||
package eu.mhsl.craftattack.spawn.core.event;
|
||||
|
||||
import org.bukkit.event.Event;
|
||||
import org.bukkit.event.HandlerList;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
public class StrikeCreatedEvent extends SpawnEvent {
|
||||
public class StrikeCreatedEvent extends Event {
|
||||
private static final HandlerList HANDLERS = new HandlerList();
|
||||
@Override
|
||||
public @NotNull HandlerList getHandlers() {
|
||||
return HANDLERS;
|
||||
}
|
||||
|
||||
public static HandlerList getHandlerList() {
|
||||
return HANDLERS;
|
||||
}
|
||||
|
||||
public record CreatedStrike(UUID playerToStrike) {}
|
||||
|
||||
private final CreatedStrike strike;
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
package eu.mhsl.craftattack.spawn.craftattack.appliances.tooling.whitelist;
|
||||
|
||||
import eu.mhsl.craftattack.spawn.core.appliance.ApplianceListener;
|
||||
import eu.mhsl.craftattack.spawn.core.event.StrikeCreatedEvent;
|
||||
import org.bukkit.event.EventHandler;
|
||||
|
||||
public class StrikeUpdateListener extends ApplianceListener<Whitelist> {
|
||||
@EventHandler
|
||||
public void onStrikeUpdate(StrikeCreatedEvent event) {
|
||||
this.getAppliance().profileUpdated(event.getStrike().playerToStrike());
|
||||
}
|
||||
}
|
||||
@@ -122,13 +122,9 @@ public class Whitelist extends Appliance {
|
||||
return response.data();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void httpApi(HttpServer.ApiBuilder apiBuilder) {
|
||||
record User(UUID user) {
|
||||
}
|
||||
apiBuilder.post("update", User.class, (user, request) -> {
|
||||
Main.instance().getLogger().info(String.format("API Triggered Profile update for %s", user.user));
|
||||
Player player = Bukkit.getPlayer(user.user);
|
||||
public void profileUpdated(UUID uuid) {
|
||||
Main.instance().getLogger().info(String.format("API Triggered Profile update for %s", uuid));
|
||||
Player player = Bukkit.getPlayer(uuid);
|
||||
if(player != null) {
|
||||
try {
|
||||
this.fullIntegrityCheck(player);
|
||||
@@ -136,6 +132,14 @@ public class Whitelist extends Appliance {
|
||||
e.getDisconnectScreen().applyKick(player);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void httpApi(HttpServer.ApiBuilder apiBuilder) {
|
||||
record User(UUID user) {
|
||||
}
|
||||
apiBuilder.post("update", User.class, (user, request) -> {
|
||||
this.profileUpdated(user.user);
|
||||
return HttpServer.nothing;
|
||||
});
|
||||
}
|
||||
@@ -144,7 +148,8 @@ public class Whitelist extends Appliance {
|
||||
@NotNull
|
||||
protected List<Listener> listeners() {
|
||||
return List.of(
|
||||
new PlayerJoinListener()
|
||||
new PlayerJoinListener(),
|
||||
new StrikeUpdateListener()
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user