From 9720cb2b5b20f2ef4c3037e7bec688411bd20680 Mon Sep 17 00:00:00 2001
From: KoutaChan <76502083+KoutaChan@users.noreply.github.com>
Date: Fri, 7 Oct 2022 00:53:29 +0900
Subject: [PATCH 1/9] UpdateAlert
---
.../api/PlayerRoleCheckerAPI.java | 11 +++++++++++
.../api/data/APIHookCustom.java | 15 +++++++++++++++
.../api/data/connector/ConnectorAPIHook.java | 7 +++++++
.../api/utils/updater/UpdateAlert.java | 16 ++++++----------
4 files changed, 39 insertions(+), 10 deletions(-)
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java
index 997908e..f3737e4 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java
@@ -18,6 +18,8 @@ public static boolean isHookedConnector() {
}
/**
+ * @return {@link ConnectorAPIHook}
+ *
* @implNote
*
注意:
*
※1 このメソッドは他のプラグインが返される可能性があります
@@ -31,6 +33,15 @@ public static ConnectorAPIHook getConnectorAPI() {
return (ConnectorAPIHook) pairs.get(HookedAPIType.CONNECTOR);
}
+ /**
+ * @return {@link ConnectorAPIHook}
+ *
+ * @implNote
+ *
コネクターのAPIを返します
+ *
+ * @see ConnectorAPIHook
+ * @see org.bukkit.plugin.PluginManager#getPlugin(String)
+ */
public static ConnectorAPIHook getConnector() {
return (ConnectorAPIHook) Bukkit.getPluginManager().getPlugin("PlayerRoleCheckerConnector");
}
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/APIHookCustom.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/APIHookCustom.java
index e87be05..9c5b211 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/APIHookCustom.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/APIHookCustom.java
@@ -4,8 +4,23 @@
import net.klnetwork.playerrolechecker.api.discord.CommandManager;
public interface APIHookCustom extends APIHook {
+ /**
+ * @return Discordのコマンドのインスタンスを返します
+ *
+ * @implNote
+ *
Discordのコマンドのインスタンスを返します
+ *
自分のコマンドを登録することやコマンドを削除することが可能
+ *
+ * @see CommandManager
+ */
CommandManager getCommandManager();
+ /**
+ * @return Java Discord API のインスタンスを返します
+ *
+ * @see Java Discord API
+ * @see JDA
+ */
JDA getJDA();
PlayerDataTable getPlayerData();
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/connector/ConnectorAPIHook.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/connector/ConnectorAPIHook.java
index ec045fe..044c213 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/connector/ConnectorAPIHook.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/connector/ConnectorAPIHook.java
@@ -1,12 +1,19 @@
package net.klnetwork.playerrolechecker.api.data.connector;
import net.klnetwork.playerrolechecker.api.data.APIHookCustom;
+import net.klnetwork.playerrolechecker.api.data.PlayerDataTable;
public interface ConnectorAPIHook extends APIHookCustom {
ConnectorBypassTable getBypass();
void setBypass(ConnectorBypassTable table);
+ /**
+ * @implNote
+ *
特に何もわからない場合は使用しないでください
+ *
+ * @deprecated {@link #setPlayerData(PlayerDataTable)} などを使用してください
+ */
@Deprecated
ConnectorCustomDataBase getCustomDataBase();
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/utils/updater/UpdateAlert.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/utils/updater/UpdateAlert.java
index f48e444..e730456 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/utils/updater/UpdateAlert.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/utils/updater/UpdateAlert.java
@@ -15,7 +15,7 @@ public class UpdateAlert implements Listener {
private final UpdateBuilder builder;
private boolean releasedNewVersion;
- private int id = -1;
+ private BukkitTask task;
private String version;
private String current;
@@ -32,7 +32,7 @@ public void registerTask() {
if (isEnabled()) {
stop();
- BukkitTask task = Bukkit.getScheduler().runTaskTimerAsynchronously(builder.plugin(), () -> {
+ task = Bukkit.getScheduler().runTaskTimerAsynchronously(builder.plugin(), () -> {
final boolean hasNewVersion = !isNewerVersion();
if (isConsoleAlert() && !releasedNewVersion && hasNewVersion) {
@@ -42,8 +42,6 @@ public void registerTask() {
this.releasedNewVersion = hasNewVersion;
}, 0, builder.checkTicks());
- id = task.getTaskId();
-
Bukkit.getPluginManager().registerEvents(this, getPlugin());
}
}
@@ -68,8 +66,7 @@ public boolean isNewerVersion() {
current = replaceRegex(isDefaultCheck() ? getVersion() : getPlugin().getDescription().getVersion());
- return isSmartVersionCheck() ? Double.parseDouble(current) >= Double.parseDouble(version)
- : version.equalsIgnoreCase(current);
+ return version.equalsIgnoreCase(current);
}
private String replaceRegex(String string) {
@@ -81,10 +78,9 @@ private String replaceRegex(String string) {
}
public void stop() {
- if (id != -1) {
- Bukkit.getScheduler().cancelTask(id);
-
- id = -1;
+ if (task == null && !task.isCancelled()) {
+ task.cancel();
+ task = null;
}
}
From 3cca988e90ea88b3619ef4774d5973eac543b895 Mon Sep 17 00:00:00 2001
From: KoutaChan <76502083+KoutaChan@users.noreply.github.com>
Date: Fri, 7 Oct 2022 01:04:43 +0900
Subject: [PATCH 2/9] public #canRegisterUnlimitedAccount()
---
.../net/klnetwork/playerrolechecker/api/ConfigValue.java | 4 ++++
.../api/data/checker/CheckerConfigManager.java | 8 ++++++++
.../api/data/connector/ConnectorAPIHook.java | 6 +++++-
3 files changed, 17 insertions(+), 1 deletion(-)
diff --git a/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/api/ConfigValue.java b/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/api/ConfigValue.java
index 74b5bbc..ef32e4d 100644
--- a/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/api/ConfigValue.java
+++ b/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/api/ConfigValue.java
@@ -65,18 +65,22 @@ public void setVerifiedPlayerIgnore(boolean verifiedPlayerIgnore) {
this.verifiedPlayerIgnore = verifiedPlayerIgnore;
}
+ @Override
public boolean canRegisterUnlimitedAccount() {
return canRegisterUnlimitedAccount;
}
+ @Override
public void setCanRegisterUnlimitedAccount(boolean canRegisterUnlimitedAccount) {
this.canRegisterUnlimitedAccount = canRegisterUnlimitedAccount;
}
+ @Override
public int getAccountPerDiscord() {
return accountPerDiscord;
}
+ @Override
public void setAccountPerDiscord(int accountPerDiscord) {
this.accountPerDiscord = accountPerDiscord;
}
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/checker/CheckerConfigManager.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/checker/CheckerConfigManager.java
index 8dbce80..378185b 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/checker/CheckerConfigManager.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/checker/CheckerConfigManager.java
@@ -16,4 +16,12 @@ public interface CheckerConfigManager {
boolean isVerifiedPlayerIgnore();
void setVerifiedPlayerIgnore(boolean verifiedPlayerIgnore);
+
+ boolean canRegisterUnlimitedAccount();
+
+ void setCanRegisterUnlimitedAccount(boolean canRegisterUnlimitedAccount);
+
+ int getAccountPerDiscord();
+
+ void setAccountPerDiscord(int accountPerDiscord);
}
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/connector/ConnectorAPIHook.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/connector/ConnectorAPIHook.java
index 044c213..dc44936 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/connector/ConnectorAPIHook.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/connector/ConnectorAPIHook.java
@@ -10,12 +10,16 @@ public interface ConnectorAPIHook extends APIHookCustom {
/**
* @implNote
- *
特に何もわからない場合は使用しないでください
+ *
わからない場合は使用しないでください
*
* @deprecated {@link #setPlayerData(PlayerDataTable)} などを使用してください
*/
@Deprecated
ConnectorCustomDataBase getCustomDataBase();
+ /**
+ *
+ * @return
+ */
ConnectorConfigManager getConfigManager();
}
\ No newline at end of file
From 0cdb2d4bf93b7e6bd726e49664dba9dd29dddd9a Mon Sep 17 00:00:00 2001
From: KoutaChan <76502083+KoutaChan@users.noreply.github.com>
Date: Sat, 8 Oct 2022 05:06:00 +0900
Subject: [PATCH 3/9] Added Javadoc (WIP)
---
.../jda/command/ForceJoinCommand.java | 1 -
.../playerrolechecker/table/PlayerDataSQL.java | 6 +++---
.../api/PlayerRoleCheckerAPI.java | 11 ++++++++++-
.../api/data/codeapi/CodeAPIConfigManager.java | 18 ++++++++++++++++++
.../api/data/codeapi/CodeAPIHook.java | 1 +
.../table/PlayerDataSQL.java | 6 +++---
6 files changed, 35 insertions(+), 8 deletions(-)
diff --git a/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/jda/command/ForceJoinCommand.java b/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/jda/command/ForceJoinCommand.java
index 5cb3db4..5a44388 100644
--- a/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/jda/command/ForceJoinCommand.java
+++ b/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/jda/command/ForceJoinCommand.java
@@ -20,7 +20,6 @@ public ForceJoinCommand(Plugin plugin) {
@Override
public String getCommandName() {
- //todo: customizable!
return "!forcejoin";
}
diff --git a/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/table/PlayerDataSQL.java b/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/table/PlayerDataSQL.java
index aaa72a8..e9b4522 100644
--- a/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/table/PlayerDataSQL.java
+++ b/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/table/PlayerDataSQL.java
@@ -35,7 +35,7 @@ public void asyncDiscordId(UUID uuid, Consumer discordId) {
@Override
public void asyncDiscordId(String uuid, Consumer discordId) {
- Bukkit.getScheduler().runTaskAsynchronously(PlayerRoleChecker.INSTANCE, () -> discordId.accept(getDiscordId(uuid)));
+ Bukkit.getScheduler().runTaskAsynchronously(getPlugin(), () -> discordId.accept(getDiscordId(uuid)));
}
@Override
@@ -45,12 +45,12 @@ public void asyncDiscordId(UUID uuid, boolean bedrock, Consumer disc
@Override
public void asyncDiscordId(String uuid, boolean bedrock, Consumer discordId) {
- Bukkit.getScheduler().runTaskAsynchronously(PlayerRoleChecker.INSTANCE, () -> discordId.accept(getDiscordId(uuid, bedrock)));
+ Bukkit.getScheduler().runTaskAsynchronously(getPlugin(), () -> discordId.accept(getDiscordId(uuid, bedrock)));
}
@Override
public void asyncUUID(String discordId, Consumer uuid) {
- Bukkit.getScheduler().runTaskAsynchronously(PlayerRoleChecker.INSTANCE, () -> uuid.accept(getUUID(discordId)));
+ Bukkit.getScheduler().runTaskAsynchronously(getPlugin(), () -> uuid.accept(getUUID(discordId)));
}
@Override
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java
index f3737e4..00925a1 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java
@@ -110,10 +110,19 @@ public static List getHookedAPIType() {
return new ArrayList<>(getAPIType());
}
- private static Set getAPIType() {
+ public static Set getAPIType() {
return pairs.keySet();
}
+ public static Map getPairs() {
+ return pairs;
+ }
+
+ /**
+ * @implNote
+ *
使用できるAPIを取得します
+ *
このメソッドが使われた場合 {@link #getPairs()} にキャッシュされます
+ */
public static void init() {
pairs.clear();
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/codeapi/CodeAPIConfigManager.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/codeapi/CodeAPIConfigManager.java
index f36c8ed..2f97a40 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/codeapi/CodeAPIConfigManager.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/codeapi/CodeAPIConfigManager.java
@@ -1,15 +1,33 @@
package net.klnetwork.playerrolechecker.api.data.codeapi;
public interface CodeAPIConfigManager {
+ /**
+ * @return コードが生成される最小値
+ */
int getMin();
+ /**
+ * @param min 最小値
+ */
void setMin(int min);
+ /**
+ * @return コードが生成される最大値
+ */
int getMax();
+ /**
+ * @param max 最大値
+ */
void setMax(int max);
+ /**
+ * @return 一時的なテーブルから削除される時間
+ */
int getDeleteSecond();
+ /**
+ * @param deleteSecond 一時的なテーブルから削除する時間
+ */
void setDeleteSecond(int deleteSecond);
}
\ No newline at end of file
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/codeapi/CodeAPIHook.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/codeapi/CodeAPIHook.java
index 59fcdb1..5e5f396 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/codeapi/CodeAPIHook.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/codeapi/CodeAPIHook.java
@@ -11,5 +11,6 @@ public interface CodeAPIHook extends APIHook {
void setTemporary(TemporaryTable table);
+
CodeAPIConfigManager getConfigManager();
}
diff --git a/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/table/PlayerDataSQL.java b/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/table/PlayerDataSQL.java
index 2f7ccf1..4f5d2c2 100644
--- a/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/table/PlayerDataSQL.java
+++ b/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/table/PlayerDataSQL.java
@@ -35,7 +35,7 @@ public void asyncDiscordId(UUID uuid, Consumer discordId) {
@Override
public void asyncDiscordId(String uuid, Consumer discordId) {
- Bukkit.getScheduler().runTaskAsynchronously(PlayerRoleCheckerConnector.INSTANCE, () -> discordId.accept(getDiscordId(uuid)));
+ Bukkit.getScheduler().runTaskAsynchronously(getPlugin(), () -> discordId.accept(getDiscordId(uuid)));
}
@Override
@@ -45,12 +45,12 @@ public void asyncDiscordId(UUID uuid, boolean bedrock, Consumer disc
@Override
public void asyncDiscordId(String uuid, boolean bedrock, Consumer discordId) {
- Bukkit.getScheduler().runTaskAsynchronously(PlayerRoleCheckerConnector.INSTANCE, () -> discordId.accept(getDiscordId(uuid, bedrock)));
+ Bukkit.getScheduler().runTaskAsynchronously(getPlugin(), () -> discordId.accept(getDiscordId(uuid, bedrock)));
}
@Override
public void asyncUUID(String discordId, Consumer uuid) {
- Bukkit.getScheduler().runTaskAsynchronously(PlayerRoleCheckerConnector.INSTANCE, () -> uuid.accept(getUUID(discordId)));
+ Bukkit.getScheduler().runTaskAsynchronously(getPlugin(), () -> uuid.accept(getUUID(discordId)));
}
@Override
From 51a1a4b02015b41dad7ea69cfce7b46aa5ffcad2 Mon Sep 17 00:00:00 2001
From: KoutaChan <76502083+KoutaChan@users.noreply.github.com>
Date: Sat, 8 Oct 2022 05:09:45 +0900
Subject: [PATCH 4/9] Upgrade spigot-api
---
CodeAPI/pom.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/CodeAPI/pom.xml b/CodeAPI/pom.xml
index b289dc0..ab79337 100644
--- a/CodeAPI/pom.xml
+++ b/CodeAPI/pom.xml
@@ -70,7 +70,7 @@
org.spigotmc
spigot-api
- 1.8-R0.1-SNAPSHOT
+ 1.19-R0.1-SNAPSHOT
provided
From 18d77a57cd1f196a7b77fa28611cc1a712026697 Mon Sep 17 00:00:00 2001
From: KoutaChan <76502083+KoutaChan@users.noreply.github.com>
Date: Sat, 15 Oct 2022 06:56:40 +0900
Subject: [PATCH 5/9] Added Javadoc (WIP)
---
.../playerrolechecker/api/PlayerRoleCheckerAPI.java | 3 +++
.../api/data/checker/CheckerConfigManager.java | 8 +++++++-
.../playerrolechecker/api/data/codeapi/CodeAPIHook.java | 1 -
.../api/data/connector/ConnectorAPIHook.java | 4 +++-
.../playerrolechecker/api/discord/CommandManager.java | 1 -
5 files changed, 13 insertions(+), 4 deletions(-)
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java
index 00925a1..d29bdcc 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java
@@ -114,6 +114,9 @@ public static Set getAPIType() {
return pairs.keySet();
}
+ /**
+ * @return キャッシュされた使用可能なAPI
+ */
public static Map getPairs() {
return pairs;
}
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/checker/CheckerConfigManager.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/checker/CheckerConfigManager.java
index 378185b..4a7d800 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/checker/CheckerConfigManager.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/checker/CheckerConfigManager.java
@@ -3,6 +3,9 @@
public interface CheckerConfigManager {
int getDeleteSecond();
+ /**
+ * @param deleteSecond 削除時間を上書きします
+ */
void setDeleteSecond(int deleteSecond);
int getMax();
@@ -23,5 +26,8 @@ public interface CheckerConfigManager {
int getAccountPerDiscord();
+ /**
+ * @param accountPerDiscord Discordアカウントごとに最大登録数を制御します
+ */
void setAccountPerDiscord(int accountPerDiscord);
-}
+}
\ No newline at end of file
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/codeapi/CodeAPIHook.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/codeapi/CodeAPIHook.java
index 5e5f396..59fcdb1 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/codeapi/CodeAPIHook.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/codeapi/CodeAPIHook.java
@@ -11,6 +11,5 @@ public interface CodeAPIHook extends APIHook {
void setTemporary(TemporaryTable table);
-
CodeAPIConfigManager getConfigManager();
}
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/connector/ConnectorAPIHook.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/connector/ConnectorAPIHook.java
index dc44936..8797b46 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/connector/ConnectorAPIHook.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/connector/ConnectorAPIHook.java
@@ -12,7 +12,9 @@ public interface ConnectorAPIHook extends APIHookCustom {
* @implNote
*
わからない場合は使用しないでください
*
- * @deprecated {@link #setPlayerData(PlayerDataTable)} などを使用してください
+ * @deprecated
+ *
@uses {@link #setPlayerData(PlayerDataTable)}
+ *
@uses {@link #setBypass(ConnectorBypassTable)}
*/
@Deprecated
ConnectorCustomDataBase getCustomDataBase();
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/discord/CommandManager.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/discord/CommandManager.java
index b1bfa98..efe8a16 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/discord/CommandManager.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/discord/CommandManager.java
@@ -52,7 +52,6 @@ public void onMessageReceived(@NotNull MessageReceivedEvent event) {
&& name.hasPermission(data.getMember())
&& (name.isGlobalCommand() || name.isWorkCommand(data))
&& name.isWork(data))
- .collect(Collectors.toList())
.forEach(message -> {
try {
message.onMessageReceiveEvent(data);
From 69938cd48db435cfdea50dba2b4986e168c95b42 Mon Sep 17 00:00:00 2001
From: KoutaChan <76502083+KoutaChan@users.noreply.github.com>
Date: Sat, 15 Oct 2022 19:05:54 +0900
Subject: [PATCH 6/9] Update PlayerRoleCheckerAPI.java
---
.../api/PlayerRoleCheckerAPI.java | 47 +++++++++++++------
1 file changed, 32 insertions(+), 15 deletions(-)
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java
index d29bdcc..bbb2d89 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java
@@ -21,9 +21,8 @@ public static boolean isHookedConnector() {
* @return {@link ConnectorAPIHook}
*
* @implNote
- *
注意:
- *
※1 このメソッドは他のプラグインが返される可能性があります
- *
※2 複数のAPIに接続できた場合は最後に見つかったAPIが返されます
+ * このメソッドは他のプラグインが返される可能性があります
+ * 複数のAPIに接続できた場合は最後に見つかったAPIが返されま
*/
public static ConnectorAPIHook getConnectorAPI() {
if (!pairs.containsKey(HookedAPIType.CONNECTOR) && !isHookedConnector()) {
@@ -46,15 +45,23 @@ public static ConnectorAPIHook getConnector() {
return (ConnectorAPIHook) Bukkit.getPluginManager().getPlugin("PlayerRoleCheckerConnector");
}
+ /**
+ * @return CheckerのAPIに接続されているか
+ *
+ * @implNote
+ * このメソッドは他のプラグインが返される可能性があります
+ * 複数のAPIに接続できた場合は最後に見つかったAPIが返されます
+ *
+ * @see #getHookedAPIType()
+ */
public static boolean isHookedChecker() {
return getHookedAPIType().contains(HookedAPIType.CHECKER);
}
/**
* @implNote
- *
注意:
- *
※1 このメソッドは他のプラグインが返される可能性があります
- *
※2 複数のAPIに接続できた場合は最後に見つかったAPIが返されます
+ * このメソッドは他のプラグインが返される可能性があります
+ * 複数のAPIに接続できた場合は最後に見つかったAPIが返されま
*/
public static CheckerAPIHook getCheckerAPI() {
if (!pairs.containsKey(HookedAPIType.CHECKER) && !isHookedChecker()) {
@@ -64,6 +71,15 @@ public static CheckerAPIHook getCheckerAPI() {
return (CheckerAPIHook) pairs.get(HookedAPIType.CHECKER);
}
+ /**
+ * @return {@link CheckerAPIHook}
+ *
+ * @implNote
+ *
チェッカーのAPIを返します
+ *
+ * @see ConnectorAPIHook
+ * @see org.bukkit.plugin.PluginManager#getPlugin(String)
+ */
public static CheckerAPIHook getChecker() {
return (CheckerAPIHook) Bukkit.getPluginManager().getPlugin("PlayerRoleChecker");
}
@@ -72,9 +88,8 @@ public static CheckerAPIHook getChecker() {
* @return CodeAPIのAPIに接続されているか
*
* @implNote
- *
注意:
- *
※1 このメソッドは他のプラグインが返される可能性があります
- *
※2 複数のAPIに接続できた場合は最後に見つかったAPIが返されます
+ * このメソッドは他のプラグインが返される可能性があります
+ * 複数のAPIに接続できた場合は最後に見つかったAPIが返されます
*
* @see #getHookedAPIType()
*/
@@ -86,9 +101,8 @@ public static boolean isHookedCodeAPI() {
* @return {@link CodeAPIHook}
*
* @implNote
- *
注意:
- *
※1 このメソッドは他のプラグインが返される可能性があります
- *
※2 複数のAPIに接続できた場合は最後に見つかったAPIが返されます
+ * このメソッドは他のプラグインが返される可能性があります
+ * 複数のAPIに接続できた場合は最後に見つかったAPIが返されま
*
* @see CodeAPIHook
* @see #isHookedCodeAPI()
@@ -115,7 +129,10 @@ public static Set getAPIType() {
}
/**
- * @return キャッシュされた使用可能なAPI
+ * @return 使用可能なAPIを返します
+ *
+ * @implNote
+ * このメソッドは {@link #init()} を実行していない場合必ず空の {@link HashMap} が返されます
*/
public static Map getPairs() {
return pairs;
@@ -123,8 +140,8 @@ public static Map getPairs() {
/**
* @implNote
- *
使用できるAPIを取得します
- *
このメソッドが使われた場合 {@link #getPairs()} にキャッシュされます
+ *
使用できるAPIを取得します
+ * このメソッドが使われた場合 {@link #getPairs()} にキャッシュされます
*/
public static void init() {
pairs.clear();
From 6d2d06f0a91e3f180eb792bd473b74a0b3a430fb Mon Sep 17 00:00:00 2001
From: KoutaChan <76502083+KoutaChan@users.noreply.github.com>
Date: Sat, 15 Oct 2022 22:31:59 +0900
Subject: [PATCH 7/9] Update Javadoc (WIP)
---
.../api/PlayerRoleCheckerAPI.java | 25 +++++++++++++------
.../playerrolechecker/api/data/APIHook.java | 6 +++++
.../api/data/codeapi/CodeAPICanRegister.java | 2 +-
3 files changed, 24 insertions(+), 9 deletions(-)
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java
index bbb2d89..5b96dc1 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java
@@ -33,10 +33,7 @@ public static ConnectorAPIHook getConnectorAPI() {
}
/**
- * @return {@link ConnectorAPIHook}
- *
- * @implNote
- *
コネクターのAPIを返します
+ * @return {@link ConnectorAPIHook} コネクターのAPIを返します
*
* @see ConnectorAPIHook
* @see org.bukkit.plugin.PluginManager#getPlugin(String)
@@ -61,7 +58,7 @@ public static boolean isHookedChecker() {
/**
* @implNote
* このメソッドは他のプラグインが返される可能性があります
- * 複数のAPIに接続できた場合は最後に見つかったAPIが返されま
+ * 複数のAPIに接続できた場合は最後に見つかったAPIが返されます
*/
public static CheckerAPIHook getCheckerAPI() {
if (!pairs.containsKey(HookedAPIType.CHECKER) && !isHookedChecker()) {
@@ -72,10 +69,9 @@ public static CheckerAPIHook getCheckerAPI() {
}
/**
- * @return {@link CheckerAPIHook}
+ * @return {@link CheckerAPIHook} チェッカーのAPIを返します
*
* @implNote
- *
チェッカーのAPIを返します
*
* @see ConnectorAPIHook
* @see org.bukkit.plugin.PluginManager#getPlugin(String)
@@ -116,6 +112,12 @@ public static CodeAPIHook getCodeAPI() {
return (CodeAPIHook) pairs.get(HookedAPIType.CODEAPI);
}
+ /**
+ * @return 現在接続可能なAPIを {@link List} で提供します
+ *
+ * @implNote
+ * キャッシュがされていない場合 {@link #init()} を実行します
+ */
public static List getHookedAPIType() {
if (pairs.isEmpty()) {
init();
@@ -124,6 +126,12 @@ public static List getHookedAPIType() {
return new ArrayList<>(getAPIType());
}
+ /**
+ * @return 現在接続可能なAPIを {@link Set} で提供します
+ *
+ * @implNote
+ * このメソッドは {@link #init()} を実行していない場合必ず空の {@link Set} で返されます
+ */
public static Set getAPIType() {
return pairs.keySet();
}
@@ -139,8 +147,9 @@ public static Map getPairs() {
}
/**
+ * 使用できるAPIを取得します
+ *
* @implNote
- *
使用できるAPIを取得します
* このメソッドが使われた場合 {@link #getPairs()} にキャッシュされます
*/
public static void init() {
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/APIHook.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/APIHook.java
index 5b0f925..3d91dbd 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/APIHook.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/APIHook.java
@@ -16,8 +16,14 @@ public interface APIHook {
*/
Metrics getMetrics();
+ /**
+ *
+ */
JoinManager getJoinManager();
+ /**
+ * @return
+ */
UpdateAlert getUpdateAlert();
/**
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/codeapi/CodeAPICanRegister.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/codeapi/CodeAPICanRegister.java
index 79c088d..2c80aec 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/codeapi/CodeAPICanRegister.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/codeapi/CodeAPICanRegister.java
@@ -4,4 +4,4 @@
public interface CodeAPICanRegister {
boolean canRegister(Plugin plugin);
-}
+}
\ No newline at end of file
From 772d8f7dab755f164d493ceaf3e596d7547e22ed Mon Sep 17 00:00:00 2001
From: KoutaChan <76502083+KoutaChan@users.noreply.github.com>
Date: Wed, 19 Oct 2022 05:15:18 +0900
Subject: [PATCH 8/9] =?UTF-8?q?=E9=87=8D=E8=A4=87=E3=82=B3=E3=83=BC?=
=?UTF-8?q?=E3=83=89=E3=82=92=E5=89=8A=E9=99=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../java/net/klnetwork/codeapi/CodeAPI.java | 6 +-
.../net/klnetwork/codeapi/table/LocalSQL.java | 177 -------------
.../playerrolechecker/PlayerRoleChecker.java | 6 +-
.../playerrolechecker/table/LocalSQL.java | 177 -------------
.../table/PlayerDataSQL.java | 234 ------------------
.../api/data/PlayerDataTable.java | 205 +++++++++++++--
.../api/data/common/TemporaryTable.java | 160 +++++++++++-
.../connector/ConnectorConfigManager.java | 6 +
.../PlayerRoleCheckerConnector.java | 7 +-
.../command/AddBypassCommand.java | 1 +
.../command/RemoveBypassCommand.java | 1 +
.../table/LocalSQL.java | 1 -
.../table/PlayerDataSQL.java | 234 ------------------
13 files changed, 353 insertions(+), 862 deletions(-)
diff --git a/CodeAPI/src/main/java/net/klnetwork/codeapi/CodeAPI.java b/CodeAPI/src/main/java/net/klnetwork/codeapi/CodeAPI.java
index 3ec9703..bf7078b 100644
--- a/CodeAPI/src/main/java/net/klnetwork/codeapi/CodeAPI.java
+++ b/CodeAPI/src/main/java/net/klnetwork/codeapi/CodeAPI.java
@@ -38,9 +38,12 @@ public final class CodeAPI extends JavaPlugin implements CodeAPIHook {
.start();
@Override
- public void onEnable() {
+ public void onLoad() {
INSTANCE = this;
+ }
+ @Override
+ public void onEnable() {
saveDefaultConfig();
LocalSQL.getInstance().create();
@@ -56,7 +59,6 @@ public void onDisable() {
if (server.isStarted()) {
server.shutdown();
}
-
updateAlert.stop();
LocalSQL.getInstance().drop();
diff --git a/CodeAPI/src/main/java/net/klnetwork/codeapi/table/LocalSQL.java b/CodeAPI/src/main/java/net/klnetwork/codeapi/table/LocalSQL.java
index cf3c555..ecfa0b3 100644
--- a/CodeAPI/src/main/java/net/klnetwork/codeapi/table/LocalSQL.java
+++ b/CodeAPI/src/main/java/net/klnetwork/codeapi/table/LocalSQL.java
@@ -2,15 +2,9 @@
import net.klnetwork.codeapi.CodeAPI;
import net.klnetwork.playerrolechecker.api.data.common.TemporaryTable;
-import net.klnetwork.playerrolechecker.api.data.common.TemporaryData;
-import net.klnetwork.playerrolechecker.api.utils.CommonUtils;
import org.bukkit.plugin.Plugin;
-import java.sql.*;
-import java.util.UUID;
-
public class LocalSQL extends TemporaryTable {
-
private static TemporaryTable table;
public static TemporaryTable getInstance() {
@@ -25,177 +19,6 @@ public static void setInstance(TemporaryTable data) {
table = data;
}
- @Override
- public boolean hasUUID(Integer code) {
- PreparedStatement statement = null;
- try {
- statement = getConnection().prepareStatement("select * from waitverify where code = ?");
- statement.setInt(1, code);
-
- ResultSet resultSet = statement.executeQuery();
-
- return resultSet.next();
- } catch (SQLException ex) {
- ex.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- return false;
- }
-
- @Override
- public TemporaryData getUUID(Integer code) {
- PreparedStatement statement = null;
- try {
- statement = getConnection().prepareStatement("select * from waitverify where code = ?");
- statement.setInt(1, code);
-
- ResultSet resultSet = statement.executeQuery();
-
- if (resultSet.next()) {
- return new TemporaryData(resultSet.getString(1), resultSet.getInt(2), resultSet.getBoolean(3));
- }
- } catch (SQLException ex) {
- ex.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- return null;
- }
-
- @Override
- @Deprecated
- public String[] getUUID(String code) {
- String[] result = null;
- try {
- PreparedStatement preparedStatement = getConnection().prepareStatement("select * from waitverify where code = ?");
- preparedStatement.setString(1, code);
-
- ResultSet resultSet = preparedStatement.executeQuery();
- if (resultSet.next()) {
- result = new String[]{resultSet.getString(1), resultSet.getString(2), String.valueOf(resultSet.getBoolean(3))};
- }
- } catch (SQLException throwables) {
- throwables.printStackTrace();
- }
- return result;
- }
-
- @Override
- public TemporaryData getCode(UUID uuid) {
- return getCode(uuid.toString());
- }
-
- @Override
- public TemporaryData getCode(String uuid) {
- PreparedStatement statement = null;
- try {
- statement = getConnection().prepareStatement("select * from waitverify where uuid = ?");
- statement.setString(1, uuid);
-
- ResultSet resultSet = statement.executeQuery();
-
- if (resultSet.next()) {
- return new TemporaryData(resultSet.getString(1), resultSet.getInt(2), resultSet.getBoolean(3));
- }
- } catch (SQLException ex) {
- ex.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- return null;
- }
-
- @Override
- public void put(String uuid, String code, boolean bedrock) {
- put(uuid, Integer.parseInt(code), bedrock);
- }
-
- @Override
- public void put(UUID uuid, Integer code, boolean bedrock) {
- put(uuid.toString(), code, bedrock);
- }
-
- @Override
- public void put(UUID uuid, String code, boolean bedrock) {
- put(uuid.toString(), Integer.parseInt(code), bedrock);
- }
-
- @Override
- public void put(String uuid, Integer code, boolean bedrock) {
- PreparedStatement statement = null;
- try {
- statement = getConnection().prepareStatement("insert into waitverify values (?,?,?)");
- statement.setString(1, uuid);
- statement.setInt(2, code);
- statement.setBoolean(3, bedrock);
- statement.execute();
- } catch (SQLException throwables) {
- throwables.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- }
-
- @Override
- public void remove(UUID uuid, Integer code) {
- remove(uuid.toString(), code);
- }
-
- @Override
- public void remove(String uuid, Integer code) {
- PreparedStatement statement = null;
- try {
- statement = getConnection().prepareStatement("delete from waitverify where uuid = ? and code = ?");
- statement.setString(1, uuid);
- statement.setInt(2, code);
- statement.execute();
- } catch (SQLException e) {
- e.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- }
-
- @Override
- public void drop() {
- Statement statement = null;
- try {
- statement = getConnection().createStatement();
-
- statement.executeUpdate("drop table if exists waitverify");
- } catch (SQLException e) {
- e.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- }
-
- @Override
- public void create() {
- Statement statement = null;
- try {
- drop();
-
- statement = getConnection().createStatement();
- statement.executeUpdate("create table if not exists waitverify (uuid string, code int, bedrock boolean)");
- } catch (SQLException e) {
- e.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- }
-
- @Override
- public Connection getConnection() throws SQLException {
- if (connection == null || connection.isClosed() || isConnectionDead()) {
- checkClass();
-
- this.connection = CommonUtils.createConnection(getSQLFormat(), getUser(), getPassword());
- }
- return connection;
- }
-
@Override
public Plugin getPlugin() {
return CodeAPI.INSTANCE;
diff --git a/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/PlayerRoleChecker.java b/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/PlayerRoleChecker.java
index ed35417..a96a687 100644
--- a/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/PlayerRoleChecker.java
+++ b/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/PlayerRoleChecker.java
@@ -45,9 +45,12 @@ public final class PlayerRoleChecker extends JavaPlugin implements CheckerAPIHoo
.start();
@Override
- public void onEnable() {
+ public void onLoad() {
INSTANCE = this;
+ }
+ @Override
+ public void onEnable() {
saveDefaultConfig();
PlayerDataSQL.getInstance().create();
@@ -70,7 +73,6 @@ public void onDisable() {
if (JDA.INSTANCE != null) {
JDA.INSTANCE.shutdown();
}
-
updateAlert.stop();
LocalSQL.getInstance().drop();
diff --git a/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/table/LocalSQL.java b/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/table/LocalSQL.java
index b05e6a1..2c8fba4 100644
--- a/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/table/LocalSQL.java
+++ b/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/table/LocalSQL.java
@@ -2,15 +2,9 @@
import net.klnetwork.playerrolechecker.PlayerRoleChecker;
import net.klnetwork.playerrolechecker.api.data.common.TemporaryTable;
-import net.klnetwork.playerrolechecker.api.data.common.TemporaryData;
-import net.klnetwork.playerrolechecker.api.utils.CommonUtils;
import org.bukkit.plugin.Plugin;
-import java.sql.*;
-import java.util.UUID;
-
public class LocalSQL extends TemporaryTable {
-
private static TemporaryTable table;
public static TemporaryTable getInstance() {
@@ -25,177 +19,6 @@ public static void setInstance(TemporaryTable data) {
table = data;
}
- @Override
- public boolean hasUUID(Integer code) {
- PreparedStatement statement = null;
- try {
- statement = getConnection().prepareStatement("select * from waitverify where code = ?");
- statement.setInt(1, code);
-
- ResultSet resultSet = statement.executeQuery();
-
- return resultSet.next();
- } catch (SQLException ex) {
- ex.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- return false;
- }
-
- @Override
- public TemporaryData getUUID(Integer code) {
- PreparedStatement statement = null;
- try {
- statement = getConnection().prepareStatement("select * from waitverify where code = ?");
- statement.setInt(1, code);
-
- ResultSet resultSet = statement.executeQuery();
-
- if (resultSet.next()) {
- return new TemporaryData(resultSet.getString(1), resultSet.getInt(2), resultSet.getBoolean(3));
- }
- } catch (SQLException ex) {
- ex.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- return null;
- }
-
- @Override
- @Deprecated
- public String[] getUUID(String code) {
- String[] result = null;
- try {
- PreparedStatement preparedStatement = getConnection().prepareStatement("select * from waitverify where code = ?");
- preparedStatement.setString(1, code);
-
- ResultSet resultSet = preparedStatement.executeQuery();
- if (resultSet.next()) {
- result = new String[]{resultSet.getString(1), resultSet.getString(2), String.valueOf(resultSet.getBoolean(3))};
- }
- } catch (SQLException e) {
- e.printStackTrace();
- }
- return result;
- }
-
- @Override
- public TemporaryData getCode(UUID uuid) {
- return getCode(uuid.toString());
- }
-
- @Override
- public TemporaryData getCode(String uuid) {
- PreparedStatement statement = null;
- try {
- statement = getConnection().prepareStatement("select * from waitverify where uuid = ?");
- statement.setString(1, uuid);
-
- ResultSet resultSet = statement.executeQuery();
-
- if (resultSet.next()) {
- return new TemporaryData(resultSet.getString(1), resultSet.getInt(2), resultSet.getBoolean(3));
- }
- } catch (SQLException ex) {
- ex.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- return null;
- }
-
- @Override
- public void put(String uuid, String code, boolean bedrock) {
- put(uuid, Integer.parseInt(code), bedrock);
- }
-
- @Override
- public void put(UUID uuid, Integer code, boolean bedrock) {
- put(uuid.toString(), code, bedrock);
- }
-
- @Override
- public void put(UUID uuid, String code, boolean bedrock) {
- put(uuid.toString(), Integer.parseInt(code), bedrock);
- }
-
- @Override
- public void put(String uuid, Integer code, boolean bedrock) {
- PreparedStatement statement = null;
- try {
- statement = getConnection().prepareStatement("insert into waitverify values (?,?,?)");
- statement.setString(1, uuid);
- statement.setInt(2, code);
- statement.setBoolean(3, bedrock);
- statement.execute();
- } catch (SQLException e) {
- e.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- }
-
- @Override
- public void remove(UUID uuid, Integer code) {
- remove(uuid.toString(), code);
- }
-
- @Override
- public void remove(String uuid, Integer code) {
- PreparedStatement statement = null;
- try {
- statement = getConnection().prepareStatement("delete from waitverify where uuid = ? and code = ?");
- statement.setString(1, uuid);
- statement.setInt(2, code);
- statement.execute();
- } catch (SQLException e) {
- e.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- }
-
- @Override
- public void drop() {
- Statement statement = null;
- try {
- statement = getConnection().createStatement();
-
- statement.executeUpdate("drop table if exists waitverify");
- } catch (SQLException e) {
- e.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- }
-
- @Override
- public void create() {
- Statement statement = null;
- try {
- drop();
-
- statement = getConnection().createStatement();
- statement.executeUpdate("create table if not exists waitverify (uuid string, code int, bedrock boolean)");
- } catch (SQLException e) {
- e.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- }
-
- @Override
- public Connection getConnection() throws SQLException {
- if (connection == null || connection.isClosed() || isConnectionDead()) {
- checkClass();
-
- this.connection = CommonUtils.createConnection(getSQLFormat(), getUser(), getPassword());
- }
- return connection;
- }
-
@Override
public Plugin getPlugin() {
return PlayerRoleChecker.INSTANCE;
diff --git a/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/table/PlayerDataSQL.java b/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/table/PlayerDataSQL.java
index e9b4522..cd0a8d2 100644
--- a/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/table/PlayerDataSQL.java
+++ b/PlayerRoleChecker/src/main/java/net/klnetwork/playerrolechecker/table/PlayerDataSQL.java
@@ -1,19 +1,10 @@
package net.klnetwork.playerrolechecker.table;
-import net.dv8tion.jda.internal.utils.tuple.Pair;
import net.klnetwork.playerrolechecker.PlayerRoleChecker;
import net.klnetwork.playerrolechecker.api.data.PlayerDataTable;
-import net.klnetwork.playerrolechecker.api.data.common.PlayerData;
-import net.klnetwork.playerrolechecker.api.utils.CommonUtils;
-import org.bukkit.Bukkit;
import org.bukkit.plugin.Plugin;
-import java.sql.*;
-import java.util.UUID;
-import java.util.function.Consumer;
-
public class PlayerDataSQL extends PlayerDataTable {
-
private static PlayerDataTable table;
public static PlayerDataTable getInstance() {
@@ -28,231 +19,6 @@ public static void setInstance(PlayerDataTable data) {
table = data;
}
- @Override
- public void asyncDiscordId(UUID uuid, Consumer discordId) {
- asyncDiscordId(uuid.toString(), discordId);
- }
-
- @Override
- public void asyncDiscordId(String uuid, Consumer discordId) {
- Bukkit.getScheduler().runTaskAsynchronously(getPlugin(), () -> discordId.accept(getDiscordId(uuid)));
- }
-
- @Override
- public void asyncDiscordId(UUID uuid, boolean bedrock, Consumer discordId) {
- asyncDiscordId(uuid.toString(), bedrock, discordId);
- }
-
- @Override
- public void asyncDiscordId(String uuid, boolean bedrock, Consumer discordId) {
- Bukkit.getScheduler().runTaskAsynchronously(getPlugin(), () -> discordId.accept(getDiscordId(uuid, bedrock)));
- }
-
- @Override
- public void asyncUUID(String discordId, Consumer uuid) {
- Bukkit.getScheduler().runTaskAsynchronously(getPlugin(), () -> uuid.accept(getUUID(discordId)));
- }
-
- @Override
- public PlayerData getDiscordId(UUID uuid) {
- return getDiscordId(uuid.toString());
- }
-
- @Override
- public PlayerData getDiscordId(String uuid) {
- PreparedStatement statement = null;
-
- try {
- statement = getConnection().prepareStatement("select * from verifyplayer where uuid = ?");
- statement.setString(1, uuid);
-
- ResultSet resultSet = statement.executeQuery();
-
- if (resultSet.next()) {
- return new PlayerData(resultSet.getString(1), resultSet.getString(2), resultSet.getBoolean(3));
- }
-
- } catch (SQLException ex) {
- ex.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- return null;
- }
-
- @Override
- public PlayerData getDiscordId(UUID uuid, boolean bedrock) {
- return getDiscordId(uuid.toString(), bedrock);
- }
-
- @Override
- public PlayerData getDiscordId(String uuid, boolean bedrock) {
- PreparedStatement statement = null;
-
- try {
- statement = getConnection().prepareStatement("select * from verifyplayer where uuid = ? and bedrock = ?");
- statement.setString(1, uuid);
- statement.setBoolean(2, bedrock);
-
- ResultSet resultSet = statement.executeQuery();
-
- if (resultSet.next()) {
- return new PlayerData(resultSet.getString(1), resultSet.getString(2), resultSet.getBoolean(3));
- }
-
- } catch (SQLException ex) {
- ex.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- return null;
- }
-
- @Override
- public boolean hasData(UUID uuid, boolean bedrock) {
- return hasData(uuid.toString(), bedrock);
- }
-
- @Override
- public boolean hasData(String uuid, boolean bedrock) {
- PreparedStatement statement = null;
-
- try {
- statement = getConnection().prepareStatement("select * from verifyplayer where uuid = ? and bedrock = ?");
- statement.setString(1, uuid);
- statement.setBoolean(2, bedrock);
-
- return statement.executeQuery().next();
- } catch (SQLException ex) {
- ex.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- return false;
- }
-
- @Override
- public PlayerData getUUID(String discordId) {
- PreparedStatement statement = null;
-
- try {
- statement = getConnection().prepareStatement("select * from verifyplayer where discord = ?");
- statement.setString(1, discordId);
-
- ResultSet resultSet = statement.executeQuery();
-
- if (resultSet.next()) {
- return new PlayerData(resultSet.getString(1), resultSet.getString(2), resultSet.getBoolean(3));
- }
- } catch (SQLException ex) {
- ex.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- return null;
- }
-
- @Override
- public void put(UUID uuid, String discordId, boolean bedrock) {
- put(uuid.toString(), discordId, bedrock);
- }
-
- @Override
- public void put(String uuid, String discordId, boolean bedrock) {
- Bukkit.getScheduler().runTaskAsynchronously(PlayerRoleChecker.INSTANCE, () -> {
- PreparedStatement statement = null;
- try {
- statement = getConnection().prepareStatement("insert into verifyplayer values (?,?,?)");
- statement.setString(1, uuid);
- statement.setString(2, discordId);
- statement.setBoolean(3, bedrock);
- statement.execute();
- } catch (SQLException throwables) {
- throwables.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- });
- }
-
- @Override
- public void remove(UUID uuid, String discordId) {
- remove(uuid.toString(), discordId);
- }
-
- @Override
- public void remove(String uuid, String discordId) {
- Bukkit.getScheduler().runTaskAsynchronously(PlayerRoleChecker.INSTANCE, () -> {
- PreparedStatement statement = null;
- try {
- statement = getConnection().prepareStatement("delete from verifyplayer where uuid = ? and discord = ?");
- statement.setString(1, uuid);
- statement.setString(2, discordId);
- statement.execute();
- } catch (SQLException e) {
- e.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- });
- }
-
- @Override
- public Pair getSize(String discordId) {
- PreparedStatement statement = null;
-
- try {
- statement = getConnection().prepareStatement("SELECT count(*), uuid, bedrock from verifyplayer where discord = ?");
- statement.setString(1, discordId);
-
- ResultSet resultSet = statement.executeQuery();
-
- if (resultSet.next()) {
- final int size = resultSet.getInt(1);
-
- if (size != 0) {
- return Pair.of(size, new PlayerData(resultSet.getString(2), discordId, resultSet.getBoolean(3)));
- } else {
- return pair;
- }
- }
- } catch (SQLException ex) {
- ex.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
-
- return pair;
- }
-
- @Override
- public void create() {
- Bukkit.getScheduler().runTaskAsynchronously(PlayerRoleChecker.INSTANCE, () -> {
- Statement statement = null;
- try {
- alter();
-
- statement = PlayerDataSQL.getInstance().getConnection().createStatement();
-
- statement.executeUpdate("create table if not exists verifyplayer (uuid VARCHAR(50), discord VARCHAR(50), bedrock BOOLEAN)");
- } catch (SQLException e) {
- e.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- });
- }
-
- @Override
- public Connection getConnection() throws SQLException {
- if (connection == null || connection.isClosed() || isConnectionDead()) {
- checkClass();
-
- this.connection = CommonUtils.createConnection(getSQLFormat(), getUser(), getPassword());
- }
- return connection;
- }
-
@Override
public Plugin getPlugin() {
return PlayerRoleChecker.INSTANCE;
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/PlayerDataTable.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/PlayerDataTable.java
index 693ab73..4110423 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/PlayerDataTable.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/PlayerDataTable.java
@@ -3,48 +3,215 @@
import net.dv8tion.jda.internal.utils.tuple.Pair;
import net.klnetwork.playerrolechecker.api.data.common.PlayerData;
import net.klnetwork.playerrolechecker.api.utils.CommonUtils;
+import org.bukkit.Bukkit;
-import java.sql.SQLException;
-import java.sql.Statement;
+import java.sql.*;
import java.util.UUID;
import java.util.function.Consumer;
public abstract class PlayerDataTable extends SQLInterface {
protected Pair pair = Pair.of(0, null);
- public abstract void asyncDiscordId(UUID uuid, Consumer discordId);
+ public void asyncDiscordId(UUID uuid, Consumer discordId) {
+ asyncDiscordId(uuid.toString(), discordId);
+ }
+
+ public void asyncDiscordId(String uuid, Consumer discordId) {
+ Bukkit.getScheduler().runTaskAsynchronously(getPlugin(), () -> discordId.accept(getDiscordId(uuid)));
+ }
+
+ public void asyncDiscordId(UUID uuid, boolean bedrock, Consumer discordId) {
+ asyncDiscordId(uuid.toString(), bedrock, discordId);
+ }
+
+ public void asyncDiscordId(String uuid, boolean bedrock, Consumer discordId) {
+ Bukkit.getScheduler().runTaskAsynchronously(getPlugin(), () -> discordId.accept(getDiscordId(uuid, bedrock)));
+ }
+
+ public void asyncUUID(String discordId, Consumer uuid) {
+ Bukkit.getScheduler().runTaskAsynchronously(getPlugin(), () -> uuid.accept(getUUID(discordId)));
+ }
+
+ public PlayerData getDiscordId(UUID uuid) {
+ return getDiscordId(uuid.toString());
+ }
- public abstract void asyncDiscordId(String uuid, Consumer discordId);
+ public PlayerData getDiscordId(String uuid) {
+ PreparedStatement statement = null;
- public abstract void asyncDiscordId(UUID uuid, boolean bedrock, Consumer discordId);
+ try {
+ statement = getConnection().prepareStatement("select * from verifyplayer where uuid = ?");
+ statement.setString(1, uuid);
- public abstract void asyncDiscordId(String uuid, boolean bedrock, Consumer discordId);
+ ResultSet resultSet = statement.executeQuery();
- public abstract void asyncUUID(String discordId, Consumer uuid);
+ if (resultSet.next()) {
+ return new PlayerData(resultSet.getString(1), resultSet.getString(2), resultSet.getBoolean(3));
+ }
+ } catch (SQLException ex) {
+ ex.printStackTrace();
+ } finally {
+ CommonUtils.close(statement);
+ }
+ return null;
+ }
- public abstract PlayerData getDiscordId(UUID uuid);
+ public PlayerData getDiscordId(UUID uuid, boolean bedrock) {
+ return getDiscordId(uuid.toString(), bedrock);
+ }
- public abstract PlayerData getDiscordId(String uuid);
+ public PlayerData getDiscordId(String uuid, boolean bedrock) {
+ PreparedStatement statement = null;
- public abstract PlayerData getDiscordId(UUID uuid, boolean bedrock);
+ try {
+ statement = getConnection().prepareStatement("select * from verifyplayer where uuid = ? and bedrock = ?");
+ statement.setString(1, uuid);
+ statement.setBoolean(2, bedrock);
- public abstract PlayerData getDiscordId(String uuid, boolean bedrock);
+ ResultSet resultSet = statement.executeQuery();
- public abstract boolean hasData(UUID uuid, boolean bedrock);
+ if (resultSet.next()) {
+ return new PlayerData(resultSet.getString(1), resultSet.getString(2), resultSet.getBoolean(3));
+ }
+ } catch (SQLException ex) {
+ ex.printStackTrace();
+ } finally {
+ CommonUtils.close(statement);
+ }
+ return null;
+ }
- public abstract boolean hasData(String uuid, boolean bedrock);
+ public boolean hasData(UUID uuid, boolean bedrock) {
+ return hasData(uuid.toString(), bedrock);
+ }
- public abstract PlayerData getUUID(String discordId);
+ public boolean hasData(String uuid, boolean bedrock) {
+ PreparedStatement statement = null;
- public abstract void put(UUID uuid, String discordId, boolean bedrock);
+ try {
+ statement = getConnection().prepareStatement("select * from verifyplayer where uuid = ? and bedrock = ?");
+ statement.setString(1, uuid);
+ statement.setBoolean(2, bedrock);
- public abstract void put(String uuid, String discordId, boolean bedrock);
+ return statement.executeQuery().next();
+ } catch (SQLException ex) {
+ ex.printStackTrace();
+ } finally {
+ CommonUtils.close(statement);
+ }
+ return false;
+ }
- public abstract void remove(UUID uuid, String discordId);
+ public PlayerData getUUID(String discordId) {
+ PreparedStatement statement = null;
- public abstract void remove(String uuid, String discordId);
+ try {
+ statement = getConnection().prepareStatement("select * from verifyplayer where discord = ?");
+ statement.setString(1, discordId);
- public abstract Pair getSize(String discordId);
+ ResultSet resultSet = statement.executeQuery();
+
+ if (resultSet.next()) {
+ return new PlayerData(resultSet.getString(1), resultSet.getString(2), resultSet.getBoolean(3));
+ }
+ } catch (SQLException e) {
+ e.printStackTrace();
+ } finally {
+ CommonUtils.close(statement);
+ }
+ return null;
+ }
+
+ public void put(UUID uuid, String discordId, boolean bedrock) {
+ put(uuid.toString(), discordId, bedrock);
+ }
+
+ public void put(String uuid, String discordId, boolean bedrock) {
+ Bukkit.getScheduler().runTaskAsynchronously(getPlugin(), () -> {
+ PreparedStatement statement = null;
+ try {
+ statement = getConnection().prepareStatement("insert into verifyplayer values (?,?,?)");
+ statement.setString(1, uuid);
+ statement.setString(2, discordId);
+ statement.setBoolean(3, bedrock);
+ statement.execute();
+ } catch (SQLException e) {
+ e.printStackTrace();
+ } finally {
+ CommonUtils.close(statement);
+ }
+ });
+ }
+
+ public void remove(UUID uuid, String discordId) {
+ remove(uuid.toString(), discordId);
+ }
+
+ public void remove(String uuid, String discordId) {
+ Bukkit.getScheduler().runTaskAsynchronously(getPlugin(), () -> {
+ PreparedStatement statement = null;
+ try {
+ statement = getConnection().prepareStatement("delete from verifyplayer where uuid = ? and discord = ?");
+ statement.setString(1, uuid);
+ statement.setString(2, discordId);
+ statement.execute();
+ } catch (SQLException e) {
+ e.printStackTrace();
+ } finally {
+ CommonUtils.close(statement);
+ }
+ });
+ }
+
+ public Pair getSize(String discordId) {
+ PreparedStatement statement = null;
+
+ try {
+ statement = getConnection().prepareStatement("SELECT count(*), uuid, bedrock from verifyplayer where discord = ?");
+ statement.setString(1, discordId);
+
+ ResultSet resultSet = statement.executeQuery();
+
+ if (resultSet.next()) {
+ final int size = resultSet.getInt(1);
+
+ return size != 0 ? Pair.of(size, new PlayerData(resultSet.getString(2), discordId, resultSet.getBoolean(3))) : pair;
+ }
+ } catch (SQLException ex) {
+ ex.printStackTrace();
+ } finally {
+ CommonUtils.close(statement);
+ }
+
+ return pair;
+ }
+
+ public void create() {
+ Bukkit.getScheduler().runTaskAsynchronously(getPlugin(), () -> {
+ Statement statement = null;
+ try {
+ alter();
+
+ statement = getConnection().createStatement();
+
+ statement.executeUpdate("create table if not exists verifyplayer (uuid VARCHAR(50), discord VARCHAR(50), bedrock BOOLEAN)");
+ } catch (SQLException e) {
+ e.printStackTrace();
+ } finally {
+ CommonUtils.close(statement);
+ }
+ });
+ }
+
+ @Override
+ public Connection getConnection() throws SQLException {
+ if (connection == null || connection.isClosed() || isConnectionDead()) {
+ checkClass();
+
+ this.connection = CommonUtils.createConnection(getSQLFormat(), getUser(), getPassword());
+ }
+ return connection;
+ }
public void alter() {
Statement statement = null;
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/common/TemporaryTable.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/common/TemporaryTable.java
index 68b9a8f..9f6e4cb 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/common/TemporaryTable.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/common/TemporaryTable.java
@@ -1,34 +1,168 @@
package net.klnetwork.playerrolechecker.api.data.common;
import net.klnetwork.playerrolechecker.api.data.SQLInterface;
+import net.klnetwork.playerrolechecker.api.utils.CommonUtils;
+import java.sql.*;
import java.util.UUID;
public abstract class TemporaryTable extends SQLInterface {
- public abstract boolean hasUUID(Integer code);
+ public boolean hasUUID(Integer code) {
+ PreparedStatement statement = null;
+ try {
+ statement = getConnection().prepareStatement("select * from waitverify where code = ?");
+ statement.setInt(1, code);
- public abstract TemporaryData getUUID(Integer code);
+ ResultSet resultSet = statement.executeQuery();
+
+ return resultSet.next();
+ } catch (SQLException ex) {
+ ex.printStackTrace();
+ } finally {
+ CommonUtils.close(statement);
+ }
+ return false;
+ }
+
+ public TemporaryData getUUID(Integer code) {
+ PreparedStatement statement = null;
+ try {
+ statement = getConnection().prepareStatement("select * from waitverify where code = ?");
+ statement.setInt(1, code);
+
+ ResultSet resultSet = statement.executeQuery();
+
+ if (resultSet.next()) {
+ return new TemporaryData(resultSet.getString(1), resultSet.getInt(2), resultSet.getBoolean(3));
+ }
+ } catch (SQLException ex) {
+ ex.printStackTrace();
+ } finally {
+ CommonUtils.close(statement);
+ }
+ return null;
+ }
@Deprecated
- public abstract String[] getUUID(String code);
+ public String[] getUUID(String code) {
+ String[] result = null;
+ try {
+ PreparedStatement preparedStatement = getConnection().prepareStatement("select * from waitverify where code = ?");
+ preparedStatement.setString(1, code);
+
+ ResultSet resultSet = preparedStatement.executeQuery();
+ if (resultSet.next()) {
+ result = new String[]{resultSet.getString(1), resultSet.getString(2), String.valueOf(resultSet.getBoolean(3))};
+ }
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ return result;
+ }
+
+ public TemporaryData getCode(UUID uuid) {
+ return getCode(uuid.toString());
+ }
+
+ public TemporaryData getCode(String uuid) {
+ PreparedStatement statement = null;
+ try {
+ statement = getConnection().prepareStatement("select * from waitverify where uuid = ?");
+ statement.setString(1, uuid);
+
+ ResultSet resultSet = statement.executeQuery();
+
+ if (resultSet.next()) {
+ return new TemporaryData(resultSet.getString(1), resultSet.getInt(2), resultSet.getBoolean(3));
+ }
+ } catch (SQLException ex) {
+ ex.printStackTrace();
+ } finally {
+ CommonUtils.close(statement);
+ }
+ return null;
+ }
+
+ public void put(String uuid, String code, boolean bedrock) {
+ put(uuid, Integer.parseInt(code), bedrock);
+ }
+
+ public void put(UUID uuid, Integer code, boolean bedrock) {
+ put(uuid.toString(), code, bedrock);
+ }
- public abstract TemporaryData getCode(UUID uuid);
+ public void put(UUID uuid, String code, boolean bedrock) {
+ put(uuid.toString(), Integer.parseInt(code), bedrock);
+ }
- public abstract TemporaryData getCode(String uuid);
+ public void put(String uuid, Integer code, boolean bedrock) {
+ PreparedStatement statement = null;
+ try {
+ statement = getConnection().prepareStatement("insert into waitverify values (?,?,?)");
+ statement.setString(1, uuid);
+ statement.setInt(2, code);
+ statement.setBoolean(3, bedrock);
+ statement.execute();
+ } catch (SQLException e) {
+ e.printStackTrace();
+ } finally {
+ CommonUtils.close(statement);
+ }
+ }
- public abstract void put(UUID uuid, String code, boolean bedrock);
+ public void remove(UUID uuid, Integer code) {
+ remove(uuid.toString(), code);
+ }
- public abstract void put(UUID uuid, Integer code, boolean bedrock);
+ public void remove(String uuid, Integer code) {
+ PreparedStatement statement = null;
+ try {
+ statement = getConnection().prepareStatement("delete from waitverify where uuid = ? and code = ?");
+ statement.setString(1, uuid);
+ statement.setInt(2, code);
+ statement.execute();
+ } catch (SQLException e) {
+ e.printStackTrace();
+ } finally {
+ CommonUtils.close(statement);
+ }
+ }
- public abstract void put(String uuid, String code, boolean bedrock);
+ public void drop() {
+ Statement statement = null;
+ try {
+ statement = getConnection().createStatement();
- public abstract void put(String uuid, Integer code, boolean bedrock);
+ statement.executeUpdate("drop table if exists waitverify");
+ } catch (SQLException e) {
+ e.printStackTrace();
+ } finally {
+ CommonUtils.close(statement);
+ }
+ }
- public abstract void remove(UUID uuid, Integer code);
+ @Override
+ public void create() {
+ Statement statement = null;
+ try {
+ drop();
- public abstract void remove(String uuid, Integer code);
+ statement = getConnection().createStatement();
+ statement.executeUpdate("create table if not exists waitverify (uuid string, code int, bedrock boolean)");
+ } catch (SQLException e) {
+ e.printStackTrace();
+ } finally {
+ CommonUtils.close(statement);
+ }
+ }
- public abstract void drop();
+ @Override
+ public Connection getConnection() throws SQLException {
+ if (connection == null || connection.isClosed() || isConnectionDead()) {
+ checkClass();
- public abstract void create();
+ this.connection = CommonUtils.createConnection(getSQLFormat(), getUser(), getPassword());
+ }
+ return connection;
+ }
}
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/connector/ConnectorConfigManager.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/connector/ConnectorConfigManager.java
index 27e9cf2..78087fc 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/connector/ConnectorConfigManager.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/connector/ConnectorConfigManager.java
@@ -7,6 +7,9 @@ public interface ConnectorConfigManager {
void setJoinMode(boolean joinMode);
+ /**
+ * @return ホワイトリストに入っているプレイヤーはスキップ可能か
+ */
boolean isWhitelistSkipped();
void setWhitelistSkipped(boolean skipped);
@@ -15,6 +18,9 @@ public interface ConnectorConfigManager {
void setRoleList(List roleList);
+ /**
+ * @return 参加したときに実行するコマンドを返します
+ */
List getJoinCommand();
void setJoinCommand(List joinCommand);
diff --git a/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/PlayerRoleCheckerConnector.java b/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/PlayerRoleCheckerConnector.java
index f318152..066bf97 100644
--- a/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/PlayerRoleCheckerConnector.java
+++ b/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/PlayerRoleCheckerConnector.java
@@ -23,7 +23,6 @@
import org.bukkit.plugin.java.JavaPlugin;
public final class PlayerRoleCheckerConnector extends JavaPlugin implements ConnectorAPIHook {
-
public static PlayerRoleCheckerConnector INSTANCE;
private final JoinManager joinManager = new JoinManager(this);
@@ -44,9 +43,12 @@ public final class PlayerRoleCheckerConnector extends JavaPlugin implements Conn
.start();
@Override
- public void onEnable() {
+ public void onLoad() {
INSTANCE = this;
+ }
+ @Override
+ public void onEnable() {
saveDefaultConfig();
PlayerDataSQL.getInstance().create();
@@ -74,7 +76,6 @@ public void onDisable() {
if (JDA.INSTANCE != null) {
JDA.INSTANCE.shutdown();
}
-
updateAlert.stop();
}
diff --git a/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/command/AddBypassCommand.java b/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/command/AddBypassCommand.java
index 6750fbe..4fd4da5 100644
--- a/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/command/AddBypassCommand.java
+++ b/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/command/AddBypassCommand.java
@@ -7,6 +7,7 @@
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
+//TODO: 書き直し
public class AddBypassCommand implements CommandExecutor {
@Override
diff --git a/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/command/RemoveBypassCommand.java b/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/command/RemoveBypassCommand.java
index 93ab3af..775c8dd 100644
--- a/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/command/RemoveBypassCommand.java
+++ b/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/command/RemoveBypassCommand.java
@@ -9,6 +9,7 @@
import java.util.UUID;
+//TODO: 書き直し
public class RemoveBypassCommand implements CommandExecutor {
@Override
diff --git a/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/table/LocalSQL.java b/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/table/LocalSQL.java
index e8656ce..becd760 100644
--- a/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/table/LocalSQL.java
+++ b/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/table/LocalSQL.java
@@ -9,7 +9,6 @@
import java.util.UUID;
public class LocalSQL extends ConnectorBypassTable {
-
private static ConnectorBypassTable table;
private boolean created;
diff --git a/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/table/PlayerDataSQL.java b/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/table/PlayerDataSQL.java
index 4f5d2c2..9252187 100644
--- a/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/table/PlayerDataSQL.java
+++ b/PlayerRoleCheckerConnector/src/main/java/net/klnetwork/playerrolecheckerconnector/table/PlayerDataSQL.java
@@ -1,19 +1,10 @@
package net.klnetwork.playerrolecheckerconnector.table;
-import net.dv8tion.jda.internal.utils.tuple.Pair;
import net.klnetwork.playerrolechecker.api.data.PlayerDataTable;
-import net.klnetwork.playerrolechecker.api.data.common.PlayerData;
-import net.klnetwork.playerrolechecker.api.utils.CommonUtils;
import net.klnetwork.playerrolecheckerconnector.PlayerRoleCheckerConnector;
-import org.bukkit.Bukkit;
import org.bukkit.plugin.Plugin;
-import java.sql.*;
-import java.util.UUID;
-import java.util.function.Consumer;
-
public class PlayerDataSQL extends PlayerDataTable {
-
private static PlayerDataTable table;
public static PlayerDataTable getInstance() {
@@ -28,231 +19,6 @@ public static void setInstance(PlayerDataTable data) {
table = data;
}
- @Override
- public void asyncDiscordId(UUID uuid, Consumer discordId) {
- asyncDiscordId(uuid.toString(), discordId);
- }
-
- @Override
- public void asyncDiscordId(String uuid, Consumer discordId) {
- Bukkit.getScheduler().runTaskAsynchronously(getPlugin(), () -> discordId.accept(getDiscordId(uuid)));
- }
-
- @Override
- public void asyncDiscordId(UUID uuid, boolean bedrock, Consumer discordId) {
- asyncDiscordId(uuid.toString(), bedrock, discordId);
- }
-
- @Override
- public void asyncDiscordId(String uuid, boolean bedrock, Consumer discordId) {
- Bukkit.getScheduler().runTaskAsynchronously(getPlugin(), () -> discordId.accept(getDiscordId(uuid, bedrock)));
- }
-
- @Override
- public void asyncUUID(String discordId, Consumer uuid) {
- Bukkit.getScheduler().runTaskAsynchronously(getPlugin(), () -> uuid.accept(getUUID(discordId)));
- }
-
- @Override
- public PlayerData getDiscordId(UUID uuid) {
- return getDiscordId(uuid.toString());
- }
-
- @Override
- public PlayerData getDiscordId(String uuid) {
- PreparedStatement statement = null;
-
- try {
- statement = getConnection().prepareStatement("select * from verifyplayer where uuid = ?");
- statement.setString(1, uuid);
-
- ResultSet resultSet = statement.executeQuery();
-
- if (resultSet.next()) {
- return new PlayerData(resultSet.getString(1), resultSet.getString(2), resultSet.getBoolean(3));
- }
-
- } catch (SQLException ex) {
- ex.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- return null;
- }
-
- @Override
- public PlayerData getDiscordId(UUID uuid, boolean bedrock) {
- return getDiscordId(uuid.toString(), bedrock);
- }
-
- @Override
- public PlayerData getDiscordId(String uuid, boolean bedrock) {
- PreparedStatement statement = null;
-
- try {
- statement = getConnection().prepareStatement("select * from verifyplayer where uuid = ? and bedrock = ?");
- statement.setString(1, uuid);
- statement.setBoolean(2, bedrock);
-
- ResultSet resultSet = statement.executeQuery();
-
- if (resultSet.next()) {
- return new PlayerData(resultSet.getString(1), resultSet.getString(2), resultSet.getBoolean(3));
- }
-
- } catch (SQLException ex) {
- ex.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- return null;
- }
-
- @Override
- public boolean hasData(UUID uuid, boolean bedrock) {
- return hasData(uuid.toString(), bedrock);
- }
-
- @Override
- public boolean hasData(String uuid, boolean bedrock) {
- PreparedStatement statement = null;
-
- try {
- statement = getConnection().prepareStatement("select * from verifyplayer where uuid = ? and bedrock = ?");
- statement.setString(1, uuid);
- statement.setBoolean(2, bedrock);
-
- return statement.executeQuery().next();
- } catch (SQLException ex) {
- ex.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- return false;
- }
-
- @Override
- public PlayerData getUUID(String discordId) {
- PreparedStatement statement = null;
-
- try {
- statement = getConnection().prepareStatement("select * from verifyplayer where discord = ?");
- statement.setString(1, discordId);
-
- ResultSet resultSet = statement.executeQuery();
-
- if (resultSet.next()) {
- return new PlayerData(resultSet.getString(1), resultSet.getString(2), resultSet.getBoolean(3));
- }
- } catch (SQLException e) {
- e.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- return null;
- }
-
- @Override
- public void put(UUID uuid, String discordId, boolean bedrock) {
- put(uuid.toString(), discordId, bedrock);
- }
-
- @Override
- public void put(String uuid, String discordId, boolean bedrock) {
- Bukkit.getScheduler().runTaskAsynchronously(PlayerRoleCheckerConnector.INSTANCE, () -> {
- PreparedStatement statement = null;
- try {
- statement = getConnection().prepareStatement("insert into verifyplayer values (?,?,?)");
- statement.setString(1, uuid);
- statement.setString(2, discordId);
- statement.setBoolean(3, bedrock);
- statement.execute();
- } catch (SQLException e) {
- e.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- });
- }
-
- @Override
- public void remove(UUID uuid, String discordId) {
- remove(uuid.toString(), discordId);
- }
-
- @Override
- public void remove(String uuid, String discordId) {
- Bukkit.getScheduler().runTaskAsynchronously(PlayerRoleCheckerConnector.INSTANCE, () -> {
- PreparedStatement statement = null;
- try {
- statement = getConnection().prepareStatement("delete from verifyplayer where uuid = ? and discord = ?");
- statement.setString(1, uuid);
- statement.setString(2, discordId);
- statement.execute();
- } catch (SQLException e) {
- e.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- });
- }
-
- @Override
- public Pair getSize(String discordId) {
- PreparedStatement statement = null;
-
- try {
- statement = getConnection().prepareStatement("SELECT count(*), uuid, bedrock from verifyplayer where discord = ?");
- statement.setString(1, discordId);
-
- ResultSet resultSet = statement.executeQuery();
-
- if (resultSet.next()) {
- final int size = resultSet.getInt(1);
-
- if (size != 0) {
- return Pair.of(size, new PlayerData(resultSet.getString(2), discordId, resultSet.getBoolean(3)));
- } else {
- return pair;
- }
- }
- } catch (SQLException ex) {
- ex.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
-
- return pair;
- }
-
- @Override
- public void create() {
- Bukkit.getScheduler().runTaskAsynchronously(PlayerRoleCheckerConnector.INSTANCE, () -> {
- Statement statement = null;
- try {
- alter();
-
- statement = PlayerDataSQL.getInstance().getConnection().createStatement();
-
- statement.executeUpdate("create table if not exists verifyplayer (uuid VARCHAR(50), discord VARCHAR(50), bedrock BOOLEAN)");
- } catch (SQLException e) {
- e.printStackTrace();
- } finally {
- CommonUtils.close(statement);
- }
- });
- }
-
- @Override
- public Connection getConnection() throws SQLException {
- if (connection == null || connection.isClosed() || isConnectionDead()) {
- checkClass();
-
- this.connection = CommonUtils.createConnection(getSQLFormat(), getUser(), getPassword());
- }
- return connection;
- }
-
@Override
public Plugin getPlugin() {
return PlayerRoleCheckerConnector.INSTANCE;
From 6bba6e37cc18b39cb811fc6f27b04605e30afd6b Mon Sep 17 00:00:00 2001
From: KoutaChan <76502083+KoutaChan@users.noreply.github.com>
Date: Tue, 1 Nov 2022 17:35:42 +0900
Subject: [PATCH 9/9] Add JavaDoc
---
.../api/PlayerRoleCheckerAPI.java | 21 ++++++++++++++++++-
.../playerrolechecker/api/data/APIHook.java | 7 ++++++-
2 files changed, 26 insertions(+), 2 deletions(-)
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java
index 5b96dc1..b68728b 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/PlayerRoleCheckerAPI.java
@@ -7,12 +7,31 @@
import net.klnetwork.playerrolechecker.api.enums.HookedAPIType;
import org.bukkit.Bukkit;
import org.bukkit.plugin.Plugin;
+import org.bukkit.plugin.PluginManager;
import java.util.*;
+/**
+ * プレイヤーロールチェッカーのインスタンス的な存在です
+ * @implNote
+ * APIに侵入したい場合は {@link PluginManager#getPlugin(String)}でプラグインを取得し、{@link CodeAPIHook} にキャストしてください
+ * APIを上書きしたい場合は {@link CodeAPIHook} を拡張してください
+ *
+ * @see CodeAPIHook
+ * @since 4.0
+ */
public class PlayerRoleCheckerAPI {
private static final Map pairs = new HashMap<>();
+ /**
+ * @return ConnectorのAPIに接続できているか
+ *
+ * @implNote
+ * このメソッドは他のプラグインが返される可能性があります
+ * 複数のAPIに接続できた場合は最後に見つかったAPIが返されます
+ *
+ * @see #getHookedAPIType()
+ */
public static boolean isHookedConnector() {
return getHookedAPIType().contains(HookedAPIType.CONNECTOR);
}
@@ -22,7 +41,7 @@ public static boolean isHookedConnector() {
*
* @implNote
* このメソッドは他のプラグインが返される可能性があります
- * 複数のAPIに接続できた場合は最後に見つかったAPIが返されま
+ * 複数のAPIに接続できた場合は最後に見つかったAPIが返されます
*/
public static ConnectorAPIHook getConnectorAPI() {
if (!pairs.containsKey(HookedAPIType.CONNECTOR) && !isHookedConnector()) {
diff --git a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/APIHook.java b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/APIHook.java
index 3d91dbd..6cdf7de 100644
--- a/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/APIHook.java
+++ b/PlayerRoleCheckerAPI/src/main/java/net/klnetwork/playerrolechecker/api/data/APIHook.java
@@ -17,12 +17,17 @@ public interface APIHook {
Metrics getMetrics();
/**
+ * @return プレイヤーが参加したときに実行される
*
+ *
詳細については -> w
*/
JoinManager getJoinManager();
/**
- * @return
+ * @return プレイヤーロールチェッカーに搭載されているアップデートアラート
+ *
+ * @implNote
+ * 現在はプレイヤーロールチェッカー内のプラグインしか機能しません
*/
UpdateAlert getUpdateAlert();