From 37183e8de68b74932b1e3a01cfc27fe65f4e7539 Mon Sep 17 00:00:00 2001 From: yoyosource Date: Sat, 26 Mar 2022 11:49:53 +0100 Subject: [PATCH 1/2] Add SteamwarUser.getServerTeam --- SpigotCore_Main/src/de/steamwar/sql/Provider.java | 1 + SpigotCore_Main/src/de/steamwar/sql/SQLProvider.java | 11 +++++++++++ .../src/de/steamwar/sql/StandaloneProvider.java | 5 +++++ SpigotCore_Main/src/de/steamwar/sql/SteamwarUser.java | 5 +++++ 4 files changed, 22 insertions(+) diff --git a/SpigotCore_Main/src/de/steamwar/sql/Provider.java b/SpigotCore_Main/src/de/steamwar/sql/Provider.java index 85c44b3..686c491 100644 --- a/SpigotCore_Main/src/de/steamwar/sql/Provider.java +++ b/SpigotCore_Main/src/de/steamwar/sql/Provider.java @@ -73,6 +73,7 @@ public interface Provider { SteamwarUser getUserByName(String userName); SteamwarUser getUserByUUID(UUID uuid); SteamwarUser getUserByID(int id); + List getServerTeam(); void logException(String server, String message, String stacktrace); diff --git a/SpigotCore_Main/src/de/steamwar/sql/SQLProvider.java b/SpigotCore_Main/src/de/steamwar/sql/SQLProvider.java index f285afe..4d13386 100644 --- a/SpigotCore_Main/src/de/steamwar/sql/SQLProvider.java +++ b/SpigotCore_Main/src/de/steamwar/sql/SQLProvider.java @@ -319,6 +319,17 @@ public class SQLProvider implements Provider { }, id); } + private static final Statement getServerTeam = new Statement("SELECT * FROM UserData WHERE UserGroup != 'Member' AND UserGroup != 'YouTuber'"); + @Override + public List getServerTeam() { + return getServerTeam.select(rs -> { + List users = new ArrayList<>(); + while(rs.next()) + users.add(newSteamwarUser(rs)); + return users; + }); + } + private SteamwarUser newSteamwarUser(ResultSet rs) throws SQLException { return new SteamwarUser(rs.getInt("id"), UUID.fromString(rs.getString("UUID")), rs.getString("UserName"), UserGroup.getUsergroup(rs.getString("UserGroup")), rs.getInt("Team"), rs.getBoolean("Bedrock")); } diff --git a/SpigotCore_Main/src/de/steamwar/sql/StandaloneProvider.java b/SpigotCore_Main/src/de/steamwar/sql/StandaloneProvider.java index 0da668a..38f3cbc 100644 --- a/SpigotCore_Main/src/de/steamwar/sql/StandaloneProvider.java +++ b/SpigotCore_Main/src/de/steamwar/sql/StandaloneProvider.java @@ -181,6 +181,11 @@ public class StandaloneProvider implements Provider { return usersByUUID.values().stream().filter(user -> user.getId() == id).findAny().get(); } + @Override + public List getServerTeam() { + return Bukkit.getOperators().stream().map(OfflinePlayer::getName).map(this::getUserByName).collect(Collectors.toList()); + } + @Override public void logException(String server, String message, String stacktrace) {} diff --git a/SpigotCore_Main/src/de/steamwar/sql/SteamwarUser.java b/SpigotCore_Main/src/de/steamwar/sql/SteamwarUser.java index 69ea9d5..6bac625 100644 --- a/SpigotCore_Main/src/de/steamwar/sql/SteamwarUser.java +++ b/SpigotCore_Main/src/de/steamwar/sql/SteamwarUser.java @@ -24,6 +24,7 @@ import org.bukkit.Bukkit; import org.bukkit.entity.Player; import java.util.HashMap; +import java.util.List; import java.util.Map; import java.util.UUID; @@ -110,4 +111,8 @@ public class SteamwarUser { public static SteamwarUser get(Player player) { return get(player.getUniqueId()); } + + public static List getServerTeam() { + return Provider.impl.getServerTeam(); + } } -- 2.39.2 From 667c3591ed68f6db02e81d59c5ce938210761d63 Mon Sep 17 00:00:00 2001 From: yoyosource Date: Sat, 26 Mar 2022 11:52:45 +0100 Subject: [PATCH 2/2] Update StandaloneProvider --- SpigotCore_Main/src/de/steamwar/sql/StandaloneProvider.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/SpigotCore_Main/src/de/steamwar/sql/StandaloneProvider.java b/SpigotCore_Main/src/de/steamwar/sql/StandaloneProvider.java index 38f3cbc..29b5f95 100644 --- a/SpigotCore_Main/src/de/steamwar/sql/StandaloneProvider.java +++ b/SpigotCore_Main/src/de/steamwar/sql/StandaloneProvider.java @@ -183,7 +183,7 @@ public class StandaloneProvider implements Provider { @Override public List getServerTeam() { - return Bukkit.getOperators().stream().map(OfflinePlayer::getName).map(this::getUserByName).collect(Collectors.toList()); + return Bukkit.getOperators().stream().map(OfflinePlayer::getUniqueId).map(this::getUserByUUID).collect(Collectors.toList()); } @Override -- 2.39.2