added updater, checking if it works...

This commit is contained in:
Bryson Steck 2021-06-06 17:17:52 -06:00
parent f90b81e427
commit ab4b6ee688
6 changed files with 57 additions and 1 deletions

BIN
lib/gson-2.8.7.jar Normal file

Binary file not shown.

View file

@ -2,8 +2,10 @@ package net.brysonsteck.Resurrection;
import net.brysonsteck.Resurrection.commands.CommandAbout; import net.brysonsteck.Resurrection.commands.CommandAbout;
import net.brysonsteck.Resurrection.commands.CommandResurrect; import net.brysonsteck.Resurrection.commands.CommandResurrect;
import net.brysonsteck.Resurrection.startup.CheckForUpdate;
import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandExecutor;
import org.bukkit.plugin.Plugin; import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.PluginDescriptionFile;
import org.bukkit.plugin.java.JavaPlugin; import org.bukkit.plugin.java.JavaPlugin;
public class Resurrection extends JavaPlugin { public class Resurrection extends JavaPlugin {
@ -18,6 +20,20 @@ public class Resurrection extends JavaPlugin {
@Override @Override
public void onEnable() { public void onEnable() {
super.onEnable(); super.onEnable();
PluginDescriptionFile pluginInfo = getDescription();
// check for updates
System.out.println("[Resurrection] Checking for updates...");
CheckForUpdate check = new CheckForUpdate();
String newestVersion = check.getVersion();
String newestVersionURL = check.getVersionURL();
if (pluginInfo.getVersion().equals(newestVersion)) {
System.out.println("[Resurrection] " + newestVersion + " is the latest version of Resurrection.");
} else {
System.out.println("[Resurrection] A new version of Resurrection is available! (current: " + pluginInfo.getVersion() + ", newest: " + newestVersion);
System.out.println("[Resurrection] You can download the latest release on GitHub here \\/");
System.out.println("[Resurrection] " + newestVersionURL);
}
// register listener // register listener
this.getServer().getPluginManager().registerEvents(new PlayerListener(), this); this.getServer().getPluginManager().registerEvents(new PlayerListener(), this);
@ -26,11 +42,12 @@ public class Resurrection extends JavaPlugin {
this.getCommand("about").setExecutor(new CommandAbout()); this.getCommand("about").setExecutor(new CommandAbout());
this.getCommand("resurrect").setExecutor(new CommandResurrect()); this.getCommand("resurrect").setExecutor(new CommandResurrect());
System.out.println("[Resurrection] I'm alive!"); System.out.println("[Resurrection] Successfully Started.");
} }
// end of spigot things // end of spigot things
public static void main(String[] args) { public static void main(String[] args) {
// PlayerData playerData = new PlayerData(); // PlayerData playerData = new PlayerData();
// playerData.saveData("This is the first line\nthis is the second line"); // playerData.saveData("This is the first line\nthis is the second line");
// System.out.println(playerData.getPlayers()); // System.out.println(playerData.getPlayers());

View file

@ -1,4 +1,43 @@
package net.brysonsteck.Resurrection.startup; package net.brysonsteck.Resurrection.startup;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
public class CheckForUpdate { public class CheckForUpdate {
String version;
String versionURL;
public CheckForUpdate() {
try {
URL url = new URL("resurrect.brysonsteck.net");
URLConnection request = url.openConnection();
request.connect();
JsonParser json = new JsonParser();
JsonElement root = json.parse(new InputStreamReader((InputStream) request.getContent()));
JsonObject rootobj = root.getAsJsonObject();
version = rootobj.get("current-version").getAsString();
versionURL = rootobj.get("release-url").getAsString();
} catch (IOException e) {
System.out.println("[Resurrection] An error has occurred while attempting to check for updates.");
e.printStackTrace();
}
}
public String getVersionURL() {
return versionURL;
}
public String getVersion() {
return version;
}
} }