diff --git a/pom.xml b/pom.xml
index 88017f1..54f8237 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,4 +1,5 @@
+
@@ -13,44 +14,24 @@
18
UTF-8
-
-
- gitlab-maven
- https://gitlab.softwarerat.com/api/v4/projects/8/packages/maven
-
-
- gitlab-maven
- https://gitlab.softwarerat.com/api/v4/projects/8/packages/maven
-
-
papermc-repo
https://repo.papermc.io/repository/maven-public/
-
- gitlab-zyonic
- https://gitlab.zyonicsoftware.com/api/v4/projects/119/packages/maven
-
-
- io.github.waterfallmc
- waterfall-api
- 1.20-R0.1-SNAPSHOT
- provided
+
+ io.papermc.paper
+ paper-api
+ 1.21.11-R0.1-SNAPSHOT
+ provided
-
- org.projectlombok
- lombok
- RELEASE
- compile
-
-
- de.mint
- AsyncMySQLPoolHandler
- 1.0.5
-
-
+
+ org.projectlombok
+ lombok
+ 1.18.42
+ provided
+
\ No newline at end of file
diff --git a/src/main/java/com/softwarerat/Bansystem.java b/src/main/java/com/softwarerat/Bansystem.java
index 9982e6a..0fcda5e 100644
--- a/src/main/java/com/softwarerat/Bansystem.java
+++ b/src/main/java/com/softwarerat/Bansystem.java
@@ -1,24 +1,30 @@
package com.softwarerat;
+import org.bukkit.plugin.java.JavaPlugin;
+
import com.softwarerat.MySQL.Ban;
import com.softwarerat.MySQL.Login;
-import com.softwarerat.MySQL.Report;
-import com.softwarerat.MySQL.SQLHandler;
-import lombok.Getter;
import com.softwarerat.MySQL.Mute;
+import com.softwarerat.MySQL.Report;
+import com.softwarerat.yml.Yaml;
+
+import lombok.Getter;
@Getter
public class Bansystem {
Ban ban;
Report report;
Mute mute;
- SQLHandler sqlHandler;
Login login;
- public void enableAPI(String user,String pw,String host,String db){
+ Yaml data;
+ String path;
+ public void enableAPI(String filename, String path){
+ data = new Yaml(path, filename);
login = new Login();
- sqlHandler = new SQLHandler(host,user, db, pw);
- ban = new Ban(sqlHandler);
- report = new Report(sqlHandler);
- mute = new Mute(sqlHandler);
+ ban = new Ban(data);
+ report = new Report(data);
+ mute = new Mute(data);
+
+
}
diff --git a/src/main/java/com/softwarerat/MySQL/Ban.java b/src/main/java/com/softwarerat/MySQL/Ban.java
index 2a39657..d2808e4 100644
--- a/src/main/java/com/softwarerat/MySQL/Ban.java
+++ b/src/main/java/com/softwarerat/MySQL/Ban.java
@@ -1,86 +1,55 @@
package com.softwarerat.MySQL;
-import java.sql.ResultSet;
-import java.sql.SQLException;
+import com.softwarerat.yml.Yaml;
+
import java.util.UUID;
-import java.util.concurrent.ExecutionException;
// Class containing all SQL things for the Ban Topic
public class Ban {
-SQLHandler sqlHandler;
+
+ private final Yaml yaml;
- public Ban(SQLHandler sqlHandler) {
- this.sqlHandler = sqlHandler;
+ public Ban(Yaml yaml) {
+ this.yaml = yaml;
}
- public void addPunishment(String uuid, String Reason ,String punisher,long time) {
+ public void addPunishment(String uuid, String reason, String punisher, long time) {
+ String banId = UUID.randomUUID().toString();
- System.out.println("Neuer Datenabruf");
- String BanID = UUID.randomUUID().toString();
- System.out.println("INSERT INTO Ban (UUID, BanID ,Name , Reason, Time) VALUES ('"+uuid+"','"+BanID+"','"+punisher+"','"+Reason+"','"+time+"');");
- try {
- sqlHandler.executeUpdate("INSERT INTO Ban (UUID, BanID ,Name , Reason, Time) VALUES ('"+uuid+"','"+BanID+"','"+punisher+"','"+Reason+"','"+time+"');");
- } catch (ExecutionException e) {
- throw new RuntimeException(e);
- } catch (InterruptedException e) {
- throw new RuntimeException(e);
- }
+ String basePath = "bans." + uuid;
+
+ yaml.set(basePath + ".ban-id", banId);
+ yaml.set(basePath + ".reason", reason);
+ yaml.set(basePath + ".punisher", punisher);
+ yaml.set(basePath + ".time", time);
}
- public Long getBanTime(String uuid){
- ResultSet resultSet = null;
- System.out.println("Neuer Datenabruf");
- try {
- System.out.println("SELECT * FROM Ban WHERE UUID = '"+uuid+"';");
- resultSet = sqlHandler.executeQuery("SELECT * FROM Ban WHERE UUID = '"+uuid+"';");
-
- } catch (ExecutionException e) {
- throw new RuntimeException(e);
- } catch (InterruptedException e) {
- throw new RuntimeException(e);
- }
- if (resultSet != null) {
- try {
- resultSet.next();
- return resultSet.getLong("Time");
- } catch (SQLException e) {
- throw new RuntimeException(e);
- }
- }
- return null;
+ public Long getBanTime(String uuid) {
+ if (!isBanned(uuid)) return null;
+ return yaml.getConfig().getLong("bans." + uuid + ".time");
}
- public String getBanUUID(String UUID) {
- System.out.println("Loading Kit");
- ResultSet resultSet = null;
- try {
- resultSet = sqlHandler.executeQuery("SELECT * FROM Ban WHERE UUID = '"+UUID+"';");
- } catch (ExecutionException e) {
- throw new RuntimeException(e);
- } catch (InterruptedException e) {
- throw new RuntimeException(e);
- }
- if (resultSet != null) {
- try {
- resultSet.next();
- return resultSet.getString("UUID");
- } catch (SQLException e) {
- throw new RuntimeException(e);
- }
- }
- System.out.println("Loaded Kit");
- return null;
+ public String getBanUUID(String uuid) {
+ if (!isBanned(uuid)) return null;
+ return uuid;
}
+
+ public String getReason(String uuid) {
+ if (!isBanned(uuid)) return null;
+ return yaml.getString("bans." + uuid + ".reason");
+ }
+
+ public String getPunisher(String uuid) {
+ if (!isBanned(uuid)) return null;
+ return yaml.getString("bans." + uuid + ".punisher");
+ }
+
+ public boolean isBanned(String uuid) {
+ return yaml.getConfig().contains("bans." + uuid);
+ }
+
public void deletePunishment(String uuid) {
-
- System.out.println("Neuer Datenabruf");
- try {
- sqlHandler.executeUpdate("DELETE FROM Ban WHERE UUID = '"+ uuid + "';");
- } catch (ExecutionException e) {
- throw new RuntimeException(e);
- } catch (InterruptedException e) {
- throw new RuntimeException(e);
- }
+ yaml.set("bans." + uuid, null);
}
}
diff --git a/src/main/java/com/softwarerat/MySQL/Mute.java b/src/main/java/com/softwarerat/MySQL/Mute.java
index f8ba64c..56519ff 100644
--- a/src/main/java/com/softwarerat/MySQL/Mute.java
+++ b/src/main/java/com/softwarerat/MySQL/Mute.java
@@ -1,88 +1,56 @@
package com.softwarerat.MySQL;
-import java.sql.ResultSet;
-import java.sql.SQLException;
+import com.softwarerat.yml.Yaml;
+
import java.util.UUID;
-import java.util.concurrent.ExecutionException;
// Class containing all SQL things for the Ban Topic
public class Mute {
- SQLHandler sqlHandler;
+
+ private final Yaml yaml;
-
- public Mute(SQLHandler sqlHandler) {
- this.sqlHandler = sqlHandler;
+ public Mute(Yaml yaml) {
+ this.yaml = yaml;
}
- public void addPunishment(String uuid, String Reason , String punisher, long time) {
+ public void addPunishment(String uuid, String reason, String punisher, long time) {
+ String muteId = UUID.randomUUID().toString();
- System.out.println("Neuer Datenabruf");
- String BanID = UUID.randomUUID().toString();
- System.out.println("INSERT INTO Mute (UUID, MuteID ,Name , Reason, Time) VALUES ('"+uuid+"','"+BanID+"','"+punisher+"','"+Reason+"','"+time+"');");
- try {
- sqlHandler.executeUpdate("INSERT INTO Mute (UUID, MuteID ,Name , Reason, Time) VALUES ('"+uuid+"','"+BanID+"','"+punisher+"','"+Reason+"','"+time+"');");
- } catch (ExecutionException e) {
- throw new RuntimeException(e);
- } catch (InterruptedException e) {
- throw new RuntimeException(e);
- }
+ String basePath = "mutes." + uuid;
+
+ yaml.set(basePath + ".mute-id", muteId);
+ yaml.set(basePath + ".reason", reason);
+ yaml.set(basePath + ".punisher", punisher);
+ yaml.set(basePath + ".time", time);
}
- public Long getMuteTime(String uuid){
- ResultSet resultSet = null;
- System.out.println("Neuer Datenabruf");
- try {
- System.out.println("SELECT * FROM Mute WHERE UUID = '"+uuid+"';");
- resultSet = sqlHandler.executeQuery("SELECT * FROM Mute WHERE UUID = '"+uuid+"';");
-
- } catch (ExecutionException e) {
- throw new RuntimeException(e);
- } catch (InterruptedException e) {
- throw new RuntimeException(e);
- }
- if (resultSet != null) {
- try {
- resultSet.next();
- return resultSet.getLong("Time");
- } catch (SQLException e) {
- throw new RuntimeException(e);
- }
- }
- return null;
+ public Long getMuteTime(String uuid) {
+ if (!isMuted(uuid)) return null;
+ return yaml.getConfig().getLong("mutes." + uuid + ".time");
}
- public String getMuteUUID(String UUID) {
- System.out.println("Loading Kit");
- ResultSet resultSet = null;
- try {
- resultSet = sqlHandler.executeQuery("SELECT * FROM Mute WHERE UUID = '"+UUID+"';");
- } catch (ExecutionException e) {
- throw new RuntimeException(e);
- } catch (InterruptedException e) {
- throw new RuntimeException(e);
- }
- if (resultSet != null) {
- try {
- resultSet.next();
- return resultSet.getString("UUID");
- } catch (SQLException e) {
- throw new RuntimeException(e);
- }
- }
- System.out.println("Loaded Kit");
- return null;
+ public String getMuteUUID(String uuid) {
+ if (!isMuted(uuid)) return null;
+ return uuid;
}
+
+ public String getReason(String uuid) {
+ if (!isMuted(uuid)) return null;
+ return yaml.getString("mutes." + uuid + ".reason");
+ }
+
+ public String getPunisher(String uuid) {
+ if (!isMuted(uuid)) return null;
+ return yaml.getString("mutes." + uuid + ".punisher");
+ }
+
+ public boolean isMuted(String uuid) {
+ return yaml.getConfig().contains("mutes." + uuid);
+ }
+
public void deletePunishment(String uuid) {
-
- System.out.println("Neuer Datenabruf");
- try {
- sqlHandler.executeUpdate("DELETE FROM Mute WHERE UUID = '"+ uuid + "';");
- } catch (ExecutionException e) {
- throw new RuntimeException(e);
- } catch (InterruptedException e) {
- throw new RuntimeException(e);
- }
+ yaml.set("mutes." + uuid, null);
}
}
diff --git a/src/main/java/com/softwarerat/MySQL/Report.java b/src/main/java/com/softwarerat/MySQL/Report.java
index f212d04..62ad442 100644
--- a/src/main/java/com/softwarerat/MySQL/Report.java
+++ b/src/main/java/com/softwarerat/MySQL/Report.java
@@ -1,70 +1,60 @@
package com.softwarerat.MySQL;
-import java.sql.ResultSet;
-import java.sql.SQLException;
+import com.softwarerat.yml.Yaml;
+
import java.util.ArrayList;
import java.util.List;
+import java.util.Set;
import java.util.UUID;
-import java.util.concurrent.ExecutionException;
public class Report {
- SQLHandler sqlHandler;
+ private final Yaml yaml;
- public Report(SQLHandler sqlHandler) {
- this.sqlHandler = sqlHandler;
+ public Report(Yaml yaml) {
+ this.yaml = yaml;
}
- public void addReport(String uuid, String Reason , String reporter) {
+ public void addReport(String targetUuid, String reason, String reporter) {
+ String reportId = UUID.randomUUID().toString();
- System.out.println("Neuer Datenabruf");
- String BanID = UUID.randomUUID().toString();
- System.out.println("INSERT INTO Report (UUID, ReportID ,Name , Reason) VALUES ('"+uuid+"','"+BanID+"','"+reporter+"','"+Reason+"');");
- try {
- sqlHandler.executeUpdate("INSERT INTO Report (UUID, ReportID ,Name , Reason) VALUES ('"+uuid+"','"+BanID+"','"+reporter+"','"+Reason+"');");
- } catch (ExecutionException e) {
- throw new RuntimeException(e);
- } catch (InterruptedException e) {
- throw new RuntimeException(e);
- }
+ String basePath = "reports." + reportId;
+
+ yaml.set(basePath + ".target", targetUuid);
+ yaml.set(basePath + ".reason", reason);
+ yaml.set(basePath + ".reporter", reporter);
}
-
-
public List getReports() {
- List reportIDs = new ArrayList<>();
- System.out.println("Loading Kit");
- ResultSet resultSet = null;
- try {
- resultSet = sqlHandler.executeQuery("SELECT * FROM Report;");
- } catch (ExecutionException e) {
- throw new RuntimeException(e);
- } catch (InterruptedException e) {
- throw new RuntimeException(e);
- }
- if (resultSet != null) {
- try {
- while (resultSet.next()){
- reportIDs.add(resultSet.getString("ReportID"));
- }
+ List reportIds = new ArrayList<>();
-
- } catch (SQLException e) {
- throw new RuntimeException(e);
- }
+ if (!yaml.getConfig().contains("reports")) {
+ return reportIds;
}
- System.out.println("Loaded Kit");
- return null;
+
+ Set keys = yaml.getConfig().getConfigurationSection("reports").getKeys(false);
+ reportIds.addAll(keys);
+
+ return reportIds;
}
- public void deleteReport(String uuid) {
- System.out.println("Neuer Datenabruf");
- try {
- sqlHandler.executeUpdate("DELETE FROM Report WHERE ReportID = '"+ uuid + "';");
- } catch (ExecutionException e) {
- throw new RuntimeException(e);
- } catch (InterruptedException e) {
- throw new RuntimeException(e);
- }
+ public String getTarget(String reportId) {
+ return yaml.getString("reports." + reportId + ".target");
}
-}
+
+ public String getReason(String reportId) {
+ return yaml.getString("reports." + reportId + ".reason");
+ }
+
+ public String getReporter(String reportId) {
+ return yaml.getString("reports." + reportId + ".reporter");
+ }
+
+ public boolean reportExists(String reportId) {
+ return yaml.getConfig().contains("reports." + reportId);
+ }
+
+ public void deleteReport(String reportId) {
+ yaml.set("reports." + reportId, null);
+ }
+}
\ No newline at end of file
diff --git a/src/main/java/com/softwarerat/MySQL/SQLHandler.java b/src/main/java/com/softwarerat/MySQL/SQLHandler.java
deleted file mode 100644
index a159b49..0000000
--- a/src/main/java/com/softwarerat/MySQL/SQLHandler.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package com.softwarerat.MySQL;
-
-import de.mint.asyncmysqlpoolhandler.configservice.ConfigBuilder;
-import de.mint.asyncmysqlpoolhandler.configservice.ConfigPoolFramework;
-import de.mint.asyncmysqlpoolhandler.enumservice.EnumPoolFramework;
-import de.mint.asyncmysqlpoolhandler.mainservice.AsyncMySQLPoolHandler;
-
-import java.sql.ResultSet;
-import java.util.concurrent.ExecutionException;
-
-public class SQLHandler {
-
- private final AsyncMySQLPoolHandler MySQLPoolHandler;
- private final ConfigPoolFramework configPoolFramework = ConfigBuilder.getConfigBuilder().build();
-
- public SQLHandler(String hostname, String user, String pw, String DB) {
- this.MySQLPoolHandler = new AsyncMySQLPoolHandler(hostname, user, pw, DB, EnumPoolFramework.HIKARICP, configPoolFramework);
- this.openConnection();
- }
-
- private void openConnection() {
- this.MySQLPoolHandler.openPool();
- }
-
- // Basic SQL Things
- protected ResultSet executeQuery(String sql) throws ExecutionException, InterruptedException {
- return this.MySQLPoolHandler.executeQueryAsync(sql).get();
- }
-
- protected void executeUpdate(String sql) throws ExecutionException, InterruptedException {
- this.MySQLPoolHandler.executeUpdateAsync(sql).get();
- }
-
-
-
-
-}
diff --git a/src/main/java/com/softwarerat/Netty/SyncDiscord.java b/src/main/java/com/softwarerat/Netty/SyncDiscord.java
deleted file mode 100644
index 0d18b02..0000000
--- a/src/main/java/com/softwarerat/Netty/SyncDiscord.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package com.softwarerat.Netty;
-
-
-//because of Client Server communication to the discord bot, netty will be the easiest Client for that.
-public class SyncDiscord {
-
-
-}
diff --git a/src/main/java/com/softwarerat/yml/Yaml.java b/src/main/java/com/softwarerat/yml/Yaml.java
new file mode 100644
index 0000000..1cb4e2f
--- /dev/null
+++ b/src/main/java/com/softwarerat/yml/Yaml.java
@@ -0,0 +1,63 @@
+package com.softwarerat.yml;
+
+
+import org.bukkit.configuration.file.FileConfiguration;
+import org.bukkit.configuration.file.YamlConfiguration;
+import org.bukkit.plugin.java.JavaPlugin;
+
+import java.io.File;
+import java.io.IOException;
+
+public class Yaml {
+
+ private final File file;
+ private FileConfiguration config;
+
+ public Yaml(String path, String fileName) {
+ this.file = new File(path, fileName); // FIX HERE
+ load();
+ }
+
+
+
+ public void load() {
+ this.config = YamlConfiguration.loadConfiguration(file);
+ }
+
+ public void save() {
+ try {
+ config.save(file);
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+
+ public void reload() {
+ load();
+ }
+
+ public FileConfiguration getConfig() {
+ return config;
+ }
+
+ public void set(String path, Object value) {
+ config.set(path, value);
+ save();
+ }
+
+ public Object get(String path) {
+ return config.get(path);
+ }
+
+ public String getString(String path) {
+ return config.getString(path);
+ }
+
+ public int getInt(String path) {
+ return config.getInt(path);
+ }
+
+ public boolean getBoolean(String path) {
+ return config.getBoolean(path);
+ }
+}