diff --git a/EaglerPluginInstaller.iml b/.idea/EaglerPluginUpdater.iml similarity index 100% rename from EaglerPluginInstaller.iml rename to .idea/EaglerPluginUpdater.iml diff --git a/.idea/artifacts/EaglerPluginInstaller_jar.xml b/.idea/artifacts/EaglerPluginInstaller_jar.xml deleted file mode 100644 index 70e0900..0000000 --- a/.idea/artifacts/EaglerPluginInstaller_jar.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - $PROJECT_DIR$/out/artifacts/EaglerPluginInstaller_jar - - - - - \ No newline at end of file diff --git a/.idea/artifacts/EaglerPluginUpdater_jar.xml b/.idea/artifacts/EaglerPluginUpdater_jar.xml new file mode 100644 index 0000000..f743efd --- /dev/null +++ b/.idea/artifacts/EaglerPluginUpdater_jar.xml @@ -0,0 +1,8 @@ + + + $PROJECT_DIR$/out/artifacts/EaglerPluginUpdater_jar + + + + + \ No newline at end of file diff --git a/.idea/compiler.xml b/.idea/compiler.xml index b91288e..c69ce6f 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -7,6 +7,7 @@ + diff --git a/out/artifacts/EaglerPluginInstaller_jar/EaglerPluginInstaller.jar b/out/artifacts/EaglerPluginInstaller_jar/EaglerPluginInstaller.jar deleted file mode 100644 index 4c8e92e..0000000 Binary files a/out/artifacts/EaglerPluginInstaller_jar/EaglerPluginInstaller.jar and /dev/null differ diff --git a/out/artifacts/EaglerPluginUpdater_jar/EaglerPluginUpdater.jar b/out/artifacts/EaglerPluginUpdater_jar/EaglerPluginUpdater.jar new file mode 100644 index 0000000..df0f676 Binary files /dev/null and b/out/artifacts/EaglerPluginUpdater_jar/EaglerPluginUpdater.jar differ diff --git a/pom.xml b/pom.xml index ef33914..12ecf74 100644 --- a/pom.xml +++ b/pom.xml @@ -5,13 +5,13 @@ 4.0.0 tech.nully - EaglerPluginInstaller - 1.0.0 + EaglerPluginUpdater + 1.0.9 jar EaglerPluginInstaller - A plugin made to install other plugins from an online repository to eaglercraft servers with a single command + An updater for EaglerPluginInstaller nully.tech 1.8 @@ -28,6 +28,11 @@ + + com.github.EaglerMaven + PluginInstaller + 1.0.0 + com.github.EaglerMaven craftbukkit diff --git a/src/main/java/tech/nully/PluginInstaller/InstallCommand.java b/src/main/java/tech/nully/PluginInstaller/InstallCommand.java deleted file mode 100644 index 1ecdc61..0000000 --- a/src/main/java/tech/nully/PluginInstaller/InstallCommand.java +++ /dev/null @@ -1,55 +0,0 @@ -package tech.nully.PluginInstaller; - -import org.bukkit.ChatColor; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; -import org.bukkit.command.ConsoleCommandSender; - -import java.io.IOException; -import java.io.InputStream; -import java.net.URI; -import java.net.URL; -import java.util.Locale; - -public class InstallCommand implements CommandExecutor { - - @Override - public boolean onCommand(CommandSender snder, Command cmd, String label, String[] args) { - // Name checker - if (cmd.getName().equalsIgnoreCase("install")) { - if (snder.isOp() || snder instanceof ConsoleCommandSender) { - Installer ins = new Installer(); - // handler for install argument - if (args.length == 1) { - String Install_Jar = args[0].toLowerCase(); - - // Checks if the created URL is a valid one - try { - if (ins.IsValidLink("https://github.com/darverdevs/PluginInstallerRepo/raw/main/" + Install_Jar + ".jar")) { - //plugin URL - URL plugin = URI.create("https://github.com/darverdevs/PluginInstallerRepo/raw/main/" + Install_Jar + ".jar") - .toURL(); - - // Creates the InputStream - try (InputStream in = plugin.openStream()) { - - // Installs the plugin - ins.InstallPlugin(in, Install_Jar.toLowerCase(), snder); - snder.sendMessage("You have successfully installed the " + ChatColor.GREEN + Install_Jar.toUpperCase() + ChatColor.WHITE + " plugin!"); - return true; - } catch (IOException e) {} - } else if (Install_Jar.equalsIgnoreCase("recommended")) { - InputStream reco1 = URI.create("https://github.com/darverdevs/PluginInstallerRepo/raw/main/dupepatch.jar") - .toURL().openStream(); - ins.InstallPlugin(reco1, "DupePatch", snder); - } - } catch (IOException e) { - snder.sendMessage("\"" + Install_Jar + "\"" + "is not a valid plugin from the database"); - } - } - } - } - return false; - } -} diff --git a/src/main/java/tech/nully/PluginInstaller/Installer.java b/src/main/java/tech/nully/PluginInstaller/Installer.java deleted file mode 100644 index a5a64d7..0000000 --- a/src/main/java/tech/nully/PluginInstaller/Installer.java +++ /dev/null @@ -1,41 +0,0 @@ -package tech.nully.PluginInstaller; - -import org.bukkit.Bukkit; -import org.bukkit.command.CommandSender; - -import java.io.File; -import java.io.IOException; -import java.io.InputStream; -import java.net.HttpURLConnection; -import java.net.MalformedURLException; -import java.net.URI; -import java.net.URL; -import java.nio.file.Files; -import java.nio.file.StandardCopyOption; -import java.util.HashMap; - -public class Installer { - - public void InstallPlugin(InputStream in, String pluginName, CommandSender s) throws IOException { - File f = new File(Main.getInstance().getDataFolder().getParent() + "/" + pluginName + ".jar"); - Files.copy(in, f.toPath(), StandardCopyOption.REPLACE_EXISTING); - } - - public boolean IsValidLink(String url) throws IOException{ - URL u = new URL(url); - HttpURLConnection huc = (HttpURLConnection) u.openConnection(); - huc.setRequestMethod("GET"); - huc.connect(); - return huc.getResponseCode() == 200; - } - - public static void InstallUpdater() throws IOException { - File file = new File(Main.getInstance().getDataFolder().getParent() + "/EaglerPluginUpdater.jar"); - if (!(file.exists())) { - URL plugin = URI.create("https://github.com/darverdevs/PluginInstaller/raw/Updater/out/artifacts/EaglerPluginUpdater_jar/EaglerPluginUpdater.jar") - .toURL(); - InputStream in = plugin.openStream(); - Files.copy(in, file.toPath(), StandardCopyOption.REPLACE_EXISTING); - } - } -} diff --git a/src/main/java/tech/nully/PluginInstaller/Main.java b/src/main/java/tech/nully/PluginInstaller/Main.java index da84fc7..b8c81d7 100644 --- a/src/main/java/tech/nully/PluginInstaller/Main.java +++ b/src/main/java/tech/nully/PluginInstaller/Main.java @@ -5,7 +5,6 @@ import org.bukkit.plugin.Plugin; import org.bukkit.plugin.java.JavaPlugin; import java.io.IOException; -import java.util.HashMap; public class Main extends JavaPlugin { private static Plugin instance = null; @@ -16,18 +15,15 @@ public class Main extends JavaPlugin { public void onEnable() { instance = this; try { - Installer.InstallUpdater(); - } catch (IOException e) {} - getCommand("install").setExecutor(new InstallCommand()); - getCommand("plist").setExecutor(new plistCommand()); + Updater.UpdateInstaller(); + } catch (IOException e) { + System.out.println("PluginUpdater: Error while updating PluginInstaller, please contact Bongo Cat#1100 on discord"); + } getServer().getConsoleSender().sendMessage("--------------------------------------------"); getServer().getConsoleSender().sendMessage("--------------------------------------------"); getServer().getConsoleSender().sendMessage( - ChatColor.GREEN + "[EaglerPluginInstaller]" + ChatColor.AQUA + " EaglerPluginInstaller V1.0.9 is now Enabled! :D"); - getServer().getConsoleSender().sendMessage("To use PluginInstaller, run the command \"/install \" (\"install \" in console) to install a plugin"); - getServer().getConsoleSender().sendMessage("To get a list of installable plugins, use the command \"/plist\" or \"plist\" in console"); - getServer().getConsoleSender().sendMessage("You can request to add a new plugin to the database by going to https://github.com/darverdevs/PluginInstallerRepo/tree/main"); - getServer().getConsoleSender().sendMessage("and creating an issue or pull request of the plugin you want to add"); + ChatColor.GREEN + "[EaglerPluginUpdater]" + ChatColor.AQUA + " EaglerPluginUpdater V1.0.9 is now Enabled! :D"); + getServer().getConsoleSender().sendMessage("You do not need to do anything, this plugin will automatically update your PluginUpdater on startup"); getServer().getConsoleSender().sendMessage("--------------------------------------------"); getServer().getConsoleSender().sendMessage("--------------------------------------------"); } @@ -37,7 +33,7 @@ public class Main extends JavaPlugin { getServer().getConsoleSender().sendMessage("--------------------------------------------"); getServer().getConsoleSender().sendMessage("--------------------------------------------"); getServer().getConsoleSender().sendMessage( - ChatColor.GREEN + "[EaglerPluginInstaller]" + ChatColor.AQUA + " PluginInstaller V1.0.9 is now Disabled! D:"); + ChatColor.GREEN + "[EaglerPluginUpdater]" + ChatColor.AQUA + " EaglerPluginUpdater V1.0.8 is now Disabled! D:"); getServer().getConsoleSender().sendMessage("--------------------------------------------"); getServer().getConsoleSender().sendMessage("--------------------------------------------"); } diff --git a/src/main/java/tech/nully/PluginInstaller/Updater.java b/src/main/java/tech/nully/PluginInstaller/Updater.java new file mode 100644 index 0000000..a31db44 --- /dev/null +++ b/src/main/java/tech/nully/PluginInstaller/Updater.java @@ -0,0 +1,22 @@ +package tech.nully.PluginInstaller; + +import java.io.File; +import java.io.IOException; +import java.io.InputStream; +import java.net.URI; +import java.nio.file.Files; +import java.nio.file.StandardCopyOption; + +import static org.bukkit.Bukkit.getServer; + +public class Updater { + public static void UpdateInstaller() throws IOException { + InputStream in = URI.create("https://github.com/darverdevs/PluginInstaller/raw/main/out/artifacts/EaglerPluginInstaller_jar/EaglerPluginInstaller.jar") + .toURL().openStream(); + File f = new File(Main.getInstance().getDataFolder().getParent() + "/EaglerPluginInstaller.jar"); + f.delete(); + Files.copy(in, f.toPath(), StandardCopyOption.REPLACE_EXISTING); + getServer().getPluginManager().disablePlugin(tech.nully.PluginInstaller.Main.getInstance()); + getServer().getPluginManager().enablePlugin(tech.nully.PluginInstaller.Main.getInstance()); + } +} diff --git a/src/main/java/tech/nully/PluginInstaller/plistCommand.java b/src/main/java/tech/nully/PluginInstaller/plistCommand.java deleted file mode 100644 index c9a893f..0000000 --- a/src/main/java/tech/nully/PluginInstaller/plistCommand.java +++ /dev/null @@ -1,24 +0,0 @@ -package tech.nully.PluginInstaller; - -import org.bukkit.ChatColor; -import org.bukkit.command.Command; -import org.bukkit.command.CommandExecutor; -import org.bukkit.command.CommandSender; - -public class plistCommand implements CommandExecutor { - @Override - public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { - if (cmd.getName().equalsIgnoreCase("plist")) { - sender.sendMessage(ChatColor.GREEN + "Here is a list of available plugins in the database:"); - // TODO: Finish this list - sender.sendMessage("1. Factions 8. AntiSwear"); - sender.sendMessage("2. ProtocolLib 9. ProtocolLib"); - sender.sendMessage("3. PermissionSex 10. MCore"); - sender.sendMessage("4. Vault 11. "); - sender.sendMessage("5. CoreProtect 12. "); - sender.sendMessage("6. DupePatch 13. "); - sender.sendMessage("7. BitchFilter 14. "); - } - return false; - } -} diff --git a/target/classes/tech/nully/PluginInstaller/InstallCommand.class b/target/classes/tech/nully/PluginInstaller/InstallCommand.class deleted file mode 100644 index 666f54c..0000000 Binary files a/target/classes/tech/nully/PluginInstaller/InstallCommand.class and /dev/null differ diff --git a/target/classes/tech/nully/PluginInstaller/Installer.class b/target/classes/tech/nully/PluginInstaller/Installer.class deleted file mode 100644 index 4b1d57b..0000000 Binary files a/target/classes/tech/nully/PluginInstaller/Installer.class and /dev/null differ diff --git a/target/classes/tech/nully/PluginInstaller/Main.class b/target/classes/tech/nully/PluginInstaller/Main.class index 13959ec..2486b11 100644 Binary files a/target/classes/tech/nully/PluginInstaller/Main.class and b/target/classes/tech/nully/PluginInstaller/Main.class differ diff --git a/target/classes/tech/nully/PluginInstaller/Updater.class b/target/classes/tech/nully/PluginInstaller/Updater.class new file mode 100644 index 0000000..97a2729 Binary files /dev/null and b/target/classes/tech/nully/PluginInstaller/Updater.class differ diff --git a/target/classes/tech/nully/PluginInstaller/plistCommand.class b/target/classes/tech/nully/PluginInstaller/plistCommand.class deleted file mode 100644 index 9d15c34..0000000 Binary files a/target/classes/tech/nully/PluginInstaller/plistCommand.class and /dev/null differ