From 61adfbb1b9d52a014d074ff2936f5fe6580511bd Mon Sep 17 00:00:00 2001 From: Unknown Date: Sat, 21 Jul 2018 11:06:42 +0200 Subject: [PATCH 01/49] Material-API update BukkitCommon: Updated SIGN_POST to SIGN (2 times) BukkitCommon: Removed a blank line in imports (formatter did this) BukkitConnector: Sorted Imports BukkitConnector: Updated SIGN_POST to SIGN (2 times) BukkitConnector Updated LEAVES to each LEAF type SerializableFireworkEffectMeta: Changed FIREWORK_CHARGE to FIREWORK_STAR SerializableFireworkMeta: Changed FIREWORK to FIREWORK_ROCKET !! SerializableSkullMeta: Changed SKULL_ITEM to PLAYER_HEAD (Please review) --- .../regalowl/hyperconomy/bukkit/BukkitCommon.java | 5 ++--- .../regalowl/hyperconomy/bukkit/BukkitConnector.java | 11 +++++------ .../serializable/SerializableFireworkEffectMeta.java | 2 +- .../serializable/SerializableFireworkMeta.java | 2 +- .../serializable/SerializableSkullMeta.java | 2 +- 5 files changed, 10 insertions(+), 12 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/bukkit/BukkitCommon.java b/src/main/java/regalowl/hyperconomy/bukkit/BukkitCommon.java index aea5b04b..9e5cd6f7 100644 --- a/src/main/java/regalowl/hyperconomy/bukkit/BukkitCommon.java +++ b/src/main/java/regalowl/hyperconomy/bukkit/BukkitCommon.java @@ -14,7 +14,6 @@ import org.bukkit.FireworkEffect.Builder; import org.bukkit.Location; import org.bukkit.Material; - import org.bukkit.block.Block; import org.bukkit.block.BlockFace; import org.bukkit.block.BlockState; @@ -123,7 +122,7 @@ protected Sign getSign(HLocation l) { protected boolean isTransactionSign(HLocation l) { Block b = getBlock(l); - if (b != null && b.getType().equals(Material.SIGN_POST) || b != null && b.getType().equals(Material.WALL_SIGN)) { + if (b != null && b.getType().equals(Material.SIGN) || b != null && b.getType().equals(Material.WALL_SIGN)) { Sign s = (Sign) b.getState(); String line3 = ChatColor.stripColor(s.getLine(2)).trim(); if (line3.equalsIgnoreCase("[sell:buy]") || line3.equalsIgnoreCase("[sell]") || line3.equalsIgnoreCase("[buy]")) { @@ -135,7 +134,7 @@ protected boolean isTransactionSign(HLocation l) { protected boolean isInfoSign(HLocation l) { Block b = getBlock(l); - if (b != null && b.getType().equals(Material.SIGN_POST) || b != null && b.getType().equals(Material.WALL_SIGN)) { + if (b != null && b.getType().equals(Material.SIGN) || b != null && b.getType().equals(Material.WALL_SIGN)) { Sign s = (Sign) b.getState(); String type = ChatColor.stripColor(s.getLine(2)).trim().replace(":", "").replace(" ", ""); if (SignType.isSignType(type)) return true; diff --git a/src/main/java/regalowl/hyperconomy/bukkit/BukkitConnector.java b/src/main/java/regalowl/hyperconomy/bukkit/BukkitConnector.java index 9d8041a9..636f43de 100644 --- a/src/main/java/regalowl/hyperconomy/bukkit/BukkitConnector.java +++ b/src/main/java/regalowl/hyperconomy/bukkit/BukkitConnector.java @@ -9,16 +9,13 @@ import java.util.concurrent.atomic.AtomicLong; import java.util.logging.Logger; -import net.milkbowl.vault.Vault; -import net.milkbowl.vault.economy.Economy; - import org.bukkit.Bukkit; import org.bukkit.Chunk; import org.bukkit.GameMode; +import org.bukkit.Location; import org.bukkit.Material; import org.bukkit.OfflinePlayer; import org.bukkit.World; -import org.bukkit.Location; import org.bukkit.block.Block; import org.bukkit.block.BlockFace; import org.bukkit.block.BlockState; @@ -43,6 +40,8 @@ import org.bukkit.scheduler.BukkitTask; import org.bukkit.util.Vector; +import net.milkbowl.vault.Vault; +import net.milkbowl.vault.economy.Economy; import regalowl.hyperconomy.HyperConomy; import regalowl.hyperconomy.InternalEconomy; import regalowl.hyperconomy.account.HyperPlayer; @@ -641,7 +640,7 @@ public ChestShop getChestShop(HLocation location) { public boolean canHoldChestShopSign(HLocation l) { Block b = common.getBlock(l); Material m = b.getType(); - if (m == Material.ICE || m == Material.LEAVES || m == Material.SAND || m == Material.GRAVEL || m == Material.SIGN || m == Material.SIGN_POST || m == Material.TNT) { + if (m == Material.ICE|| m == Material.BIRCH_LEAVES|| m == Material.ACACIA_LEAVES || m == Material.BIRCH_LEAVES|| m == Material.DARK_OAK_LEAVES|| m == Material.JUNGLE_LEAVES || m == Material.OAK_LEAVES|| m == Material.SPRUCE_LEAVES || m == Material.SAND || m == Material.GRAVEL || m == Material.SIGN || m == Material.SIGN || m == Material.TNT) { return false; } return true; @@ -664,7 +663,7 @@ public String removeColor(String text) { public HSign getSign(HLocation location) { if (location == null) return null; Block b = common.getLocation(location).getBlock(); - if (b != null && (b.getType().equals(Material.SIGN_POST) || b.getType().equals(Material.WALL_SIGN))) { + if (b != null && (b.getType().equals(Material.SIGN) || b.getType().equals(Material.WALL_SIGN))) { Sign s = (Sign) b.getState(); boolean isWallSign = (b.getType().equals(Material.WALL_SIGN)) ? true:false; ArrayList lines = new ArrayList(); diff --git a/src/main/java/regalowl/hyperconomy/serializable/SerializableFireworkEffectMeta.java b/src/main/java/regalowl/hyperconomy/serializable/SerializableFireworkEffectMeta.java index 4af0306e..9a94d6e8 100644 --- a/src/main/java/regalowl/hyperconomy/serializable/SerializableFireworkEffectMeta.java +++ b/src/main/java/regalowl/hyperconomy/serializable/SerializableFireworkEffectMeta.java @@ -44,7 +44,7 @@ public SerializableFireworkEffectMeta(String base64String) { @Override public ItemMeta getItemMeta() { - ItemStack s = new ItemStack(Material.FIREWORK_CHARGE); + ItemStack s = new ItemStack(Material.FIREWORK_STAR); FireworkEffectMeta fem = (FireworkEffectMeta)s.getItemMeta(); fem.setDisplayName(displayName); fem.setLore(lore); diff --git a/src/main/java/regalowl/hyperconomy/serializable/SerializableFireworkMeta.java b/src/main/java/regalowl/hyperconomy/serializable/SerializableFireworkMeta.java index ab930fc7..7e56bf07 100644 --- a/src/main/java/regalowl/hyperconomy/serializable/SerializableFireworkMeta.java +++ b/src/main/java/regalowl/hyperconomy/serializable/SerializableFireworkMeta.java @@ -52,7 +52,7 @@ public SerializableFireworkMeta(String base64String) { @Override public ItemMeta getItemMeta() { - ItemStack s = new ItemStack(Material.FIREWORK); + ItemStack s = new ItemStack(Material.FIREWORK_ROCKET); FireworkMeta fm = (FireworkMeta)s.getItemMeta(); fm.setDisplayName(displayName); fm.setLore(lore); diff --git a/src/main/java/regalowl/hyperconomy/serializable/SerializableSkullMeta.java b/src/main/java/regalowl/hyperconomy/serializable/SerializableSkullMeta.java index ce39a777..d094a53c 100644 --- a/src/main/java/regalowl/hyperconomy/serializable/SerializableSkullMeta.java +++ b/src/main/java/regalowl/hyperconomy/serializable/SerializableSkullMeta.java @@ -45,7 +45,7 @@ public SerializableSkullMeta(String base64String) { @Override public ItemMeta getItemMeta() { - ItemStack s = new ItemStack(Material.SKULL_ITEM); + ItemStack s = new ItemStack(Material.PLAYER_HEAD); SkullMeta sm = (SkullMeta)s.getItemMeta(); sm.setDisplayName(displayName); sm.setLore(lore); From 1bdea273a96297bf88b3284f9e323e4ea03cf67b Mon Sep 17 00:00:00 2001 From: Unknown Date: Sat, 21 Jul 2018 11:36:56 +0200 Subject: [PATCH 02/49] Deprecation updates BukkitListener updated PlayerPickupEvent to EntityPickupEvent NBTTools: updated newInstance from deperecated Call NBTTools: Changed type of nbtTagCompound from Class to Class, this prevents warnings and does effectively the same as before HyperWebAPI: updated deprecated newInstance Access to new Access HyperWebAPI: updated construction of Character to use valueOf as proposed by Deprecation --- .../hyperconomy/bukkit/BukkitListener.java | 4 +- .../regalowl/hyperconomy/bukkit/NBTTools.java | 7 ++- .../hyperconomy/webpage/HyperWebAPI.java | 53 +++++++++++-------- 3 files changed, 36 insertions(+), 28 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/bukkit/BukkitListener.java b/src/main/java/regalowl/hyperconomy/bukkit/BukkitListener.java index 11c0ac1f..659d4fba 100644 --- a/src/main/java/regalowl/hyperconomy/bukkit/BukkitListener.java +++ b/src/main/java/regalowl/hyperconomy/bukkit/BukkitListener.java @@ -21,6 +21,7 @@ import org.bukkit.event.block.SignChangeEvent; import org.bukkit.event.entity.CreatureSpawnEvent; import org.bukkit.event.entity.EntityExplodeEvent; +import org.bukkit.event.entity.EntityPickupItemEvent; import org.bukkit.event.inventory.InventoryClickEvent; import org.bukkit.event.inventory.InventoryCloseEvent; import org.bukkit.event.inventory.InventoryDragEvent; @@ -29,7 +30,6 @@ import org.bukkit.event.player.PlayerInteractEvent; import org.bukkit.event.player.PlayerItemHeldEvent; import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.event.player.PlayerPickupItemEvent; import org.bukkit.event.player.PlayerQuitEvent; import org.bukkit.event.world.ChunkLoadEvent; import org.bukkit.event.world.ChunkUnloadEvent; @@ -371,7 +371,7 @@ public void onPickupDisplayCreatureSpawn(CreatureSpawnEvent event) { } @EventHandler - public void onPlayerPickupItemDisplayEvent(PlayerPickupItemEvent event) { + public void onPlayerPickupItemDisplayEvent(EntityPickupItemEvent event) { Item item = event.getItem(); if (!event.isCancelled()) { List meta = item.getMetadata("HyperConomy"); diff --git a/src/main/java/regalowl/hyperconomy/bukkit/NBTTools.java b/src/main/java/regalowl/hyperconomy/bukkit/NBTTools.java index 2a4a0d72..a42c55ec 100644 --- a/src/main/java/regalowl/hyperconomy/bukkit/NBTTools.java +++ b/src/main/java/regalowl/hyperconomy/bukkit/NBTTools.java @@ -30,8 +30,7 @@ public class NBTTools { private Method nbtTagCompoundGetDoubleMethod; private Method nbtTagCompoundSetBooleanMethod; private Method nbtTagCompoundGetBooleanMethod; - @SuppressWarnings("rawtypes") - private Class nbtTagCompound; + private Class nbtTagCompound; private boolean loadedSuccessfully = false; @SuppressWarnings("unchecked") @@ -42,7 +41,7 @@ public NBTTools() { version = version.substring(version.lastIndexOf(".") + 1, version.length()); craftItemStackClass = Class.forName("org.bukkit.craftbukkit." + version + ".inventory.CraftItemStack"); nbtTagCompound = Class.forName("net.minecraft.server." + version + ".NBTTagCompound"); - Object nbtTag = nbtTagCompound.newInstance(); + Object nbtTag = nbtTagCompound.getDeclaredConstructor().newInstance(); @SuppressWarnings("rawtypes") Class nbtBase = Class.forName("net.minecraft.server." + version + ".NBTBase"); craftItemStackAsNMSCopyMethod = craftItemStackClass.getMethod("asNMSCopy", ItemStack.class); @@ -133,7 +132,7 @@ public void setNBTTag(Object nmsItemStack, Object nbtTag) { } public Object generateNBTTag() { try { - return nbtTagCompound.newInstance(); + return nbtTagCompound.getDeclaredConstructor().newInstance(); } catch (Exception e) { e.printStackTrace(); return null; diff --git a/src/main/java/regalowl/hyperconomy/webpage/HyperWebAPI.java b/src/main/java/regalowl/hyperconomy/webpage/HyperWebAPI.java index 80daddf6..3522ac87 100755 --- a/src/main/java/regalowl/hyperconomy/webpage/HyperWebAPI.java +++ b/src/main/java/regalowl/hyperconomy/webpage/HyperWebAPI.java @@ -61,15 +61,19 @@ public void doGet(HttpServletRequest pRequest, HttpServletResponse pResponse) th } /** - * Execute an treatement - * @param pUri Uri source - * @return The text that must be send to the client - * @throws InvocationTargetException InvocationTargetException - * @throws IllegalAccessException IllegalAccessException - * @throws InstantiationException InstantiationException - * @throws IllegalArgumentException IllegalArgumentException - */ - private String getObjects(String pUri) throws IllegalArgumentException, InstantiationException, IllegalAccessException, InvocationTargetException { + * Execute an treatement + * + * @param pUri Uri source + * @return The text that must be send to the client + * @throws InvocationTargetException InvocationTargetException + * @throws IllegalAccessException IllegalAccessException + * @throws InstantiationException InstantiationException + * @throws IllegalArgumentException IllegalArgumentException + * @throws SecurityException SecurityException + * @throws NoSuchMethodException NoSuchMethodException + */ + private String getObjects(String pUri) throws IllegalArgumentException, InstantiationException, + IllegalAccessException, InvocationTargetException, NoSuchMethodException, SecurityException { //Find all parts of the URI String[] lParts = pUri.split("/"); List lPartList = new ArrayList(); @@ -148,18 +152,23 @@ private String listMethods(String pClass) { } /** - * Call a method (pMethod) in an instance of pClass, with parameters (pParams) - * @param pClass Class to use - * @param pMethod Method to call - * @param pParams Parameters of the method - * @return the result of the method (or an exception) - * @throws IllegalAccessException IllegalAccessException - * @throws InstantiationException InstantiationException - * @throws InvocationTargetException InvocationTargetException - * @throws IllegalArgumentException IllegalArgumentException - */ + * Call a method (pMethod) in an instance of pClass, with parameters (pParams) + * + * @param pClass Class to use + * @param pMethod Method to call + * @param pParams Parameters of the method + * @return the result of the method (or an exception) + * @throws IllegalAccessException IllegalAccessException + * @throws InstantiationException InstantiationException + * @throws InvocationTargetException InvocationTargetException + * @throws IllegalArgumentException IllegalArgumentException + * @throws SecurityException SecurityException + * @throws NoSuchMethodException NoSuchMethodException + */ @SuppressWarnings("rawtypes") - private String callMethod(String pClass, String pMethod, List pParams) throws InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException { + private String callMethod(String pClass, String pMethod, List pParams) + throws InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException, + NoSuchMethodException, SecurityException { String lReturn = ""; //Get the class @@ -174,7 +183,7 @@ private String callMethod(String pClass, String pMethod, List pParams) t } //Create the instance - Object lObject = lClass.newInstance(); + Object lObject = lClass.getDeclaredConstructor().newInstance(); //Table to call the method Object[] lArgs = new Object[lMethod.getParameterTypes().length]; @@ -210,7 +219,7 @@ else if (lType.isAssignableFrom(boolean.class)) { lArgs[lIndex] = Boolean.parseBoolean(pParams.get(lIndex)); } //It's a char else if (lType.isAssignableFrom(char.class)) { - lArgs[lIndex] = new Character(pParams.get(lIndex).charAt(0)); + lArgs[lIndex] = Character.valueOf(pParams.get(lIndex).charAt(0)); } //It's a player -> find by name else if (lType.isAssignableFrom(HyperPlayer.class)) { lArgs[lIndex] = hc.getHyperPlayerManager().getHyperPlayer(pParams.get(lIndex)); From 49815e9519dc71179b1d81f4c2f2aa5be8dd9f40 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sat, 21 Jul 2018 11:49:07 +0200 Subject: [PATCH 03/49] BREAKING! Updated Enchantment to Use Key instead of Name --- .../serializable/SerializableEnchantment.java | 11 ++++++----- .../SerializableEnchantmentStorageMeta.java | 4 ++-- .../hyperconomy/util/DatabaseUpdater.java | 16 +++++++++------- 3 files changed, 17 insertions(+), 14 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/serializable/SerializableEnchantment.java b/src/main/java/regalowl/hyperconomy/serializable/SerializableEnchantment.java index 4d0e7f42..e485743f 100644 --- a/src/main/java/regalowl/hyperconomy/serializable/SerializableEnchantment.java +++ b/src/main/java/regalowl/hyperconomy/serializable/SerializableEnchantment.java @@ -4,6 +4,7 @@ import java.io.ObjectInputStream; import java.io.Serializable; +import org.bukkit.NamespacedKey; import org.bukkit.enchantments.Enchantment; import org.yaml.snakeyaml.external.biz.base64Coder.Base64Coder; @@ -11,12 +12,12 @@ public class SerializableEnchantment extends SerializableObject implements Serializable { - private static final long serialVersionUID = 4510326523024526205L; - private String enchantment; + private static final long serialVersionUID = -5705303756771850224L; + private NamespacedKey enchantment; private int lvl; public SerializableEnchantment(Enchantment e, int lvl) { - this.enchantment = e.getName(); + this.enchantment = e.getKey(); this.lvl = lvl; } @@ -36,10 +37,10 @@ public SerializableEnchantment(String base64String) { } public Enchantment getEnchantment() { - return Enchantment.getByName(enchantment); + return Enchantment.getByKey(enchantment); } - public String getEnchantmentName() { + public NamespacedKey getEnchantmentName() { return enchantment; } diff --git a/src/main/java/regalowl/hyperconomy/serializable/SerializableEnchantmentStorageMeta.java b/src/main/java/regalowl/hyperconomy/serializable/SerializableEnchantmentStorageMeta.java index a9b8e1c1..b822ed04 100644 --- a/src/main/java/regalowl/hyperconomy/serializable/SerializableEnchantmentStorageMeta.java +++ b/src/main/java/regalowl/hyperconomy/serializable/SerializableEnchantmentStorageMeta.java @@ -20,7 +20,7 @@ public class SerializableEnchantmentStorageMeta extends SerializableItemMeta implements Serializable { - private static final long serialVersionUID = -6050487153906386305L; + private static final long serialVersionUID = -797201926717838339L; private List storedEnchantments = new ArrayList(); @@ -64,7 +64,7 @@ public ItemMeta getItemMeta() { esm.addEnchant(se.getEnchantment(), se.getLvl(), true); } for (SerializableEnchantment se:storedEnchantments) { - esm.addStoredEnchant(Enchantment.getByName(se.getEnchantmentName()), se.getLvl(), true); + esm.addStoredEnchant(Enchantment.getByKey(se.getEnchantmentName()), se.getLvl(), true); } return esm; } diff --git a/src/main/java/regalowl/hyperconomy/util/DatabaseUpdater.java b/src/main/java/regalowl/hyperconomy/util/DatabaseUpdater.java index 24387012..bf948711 100644 --- a/src/main/java/regalowl/hyperconomy/util/DatabaseUpdater.java +++ b/src/main/java/regalowl/hyperconomy/util/DatabaseUpdater.java @@ -5,6 +5,12 @@ import java.util.HashMap; import java.util.Map; +import regalowl.hyperconomy.HyperConomy; +import regalowl.hyperconomy.bukkit.BukkitConnector; +import regalowl.hyperconomy.inventory.HEnchantment; +import regalowl.hyperconomy.inventory.HItemStack; +import regalowl.hyperconomy.serializable.SerializableEnchantment; +import regalowl.hyperconomy.serializable.SerializableItemStack; import regalowl.simpledatalib.CommonFunctions; import regalowl.simpledatalib.file.FileConfiguration; import regalowl.simpledatalib.sql.Field; @@ -13,12 +19,6 @@ import regalowl.simpledatalib.sql.SQLRead; import regalowl.simpledatalib.sql.SQLWrite; import regalowl.simpledatalib.sql.Table; -import regalowl.hyperconomy.HyperConomy; -import regalowl.hyperconomy.bukkit.BukkitConnector; -import regalowl.hyperconomy.inventory.HEnchantment; -import regalowl.hyperconomy.inventory.HItemStack; -import regalowl.hyperconomy.serializable.SerializableEnchantment; -import regalowl.hyperconomy.serializable.SerializableItemStack; public class DatabaseUpdater { @@ -102,7 +102,9 @@ public boolean updateTables(QueryResult qr) { sw.addToQueue("UPDATE hyperconomy_objects SET DATA = '"+n.serialize()+"' WHERE NAME = '"+name+"'"); } else if (type.equalsIgnoreCase("ENCHANTMENT")) { SerializableEnchantment sis = new SerializableEnchantment(data); - HEnchantment n = new HEnchantment(sis.getEnchantmentName(), sis.getLvl()); + HEnchantment n = new HEnchantment( + sis.getEnchantmentName().getNamespace() + ":" + sis.getEnchantmentName().getKey(), + sis.getLvl()); sw.addToQueue("UPDATE hyperconomy_objects SET DATA = '"+n.serialize()+"' WHERE NAME = '"+name+"'"); } } From 66bed33217977a88c41521c51b8c7f52426fbfaa Mon Sep 17 00:00:00 2001 From: Unknown Date: Sat, 21 Jul 2018 11:54:58 +0200 Subject: [PATCH 04/49] BREAKING! Updated SerializableSkullMeta to use UUIDs instead of names For this, the getOwner() method was split into getOwnerName() and getOwnerUUID() The UUID is serialized, while the Name is retrieved from Bukkit --- .../serializable/SerializableSkullMeta.java | 20 ++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/serializable/SerializableSkullMeta.java b/src/main/java/regalowl/hyperconomy/serializable/SerializableSkullMeta.java index d094a53c..eeb89986 100644 --- a/src/main/java/regalowl/hyperconomy/serializable/SerializableSkullMeta.java +++ b/src/main/java/regalowl/hyperconomy/serializable/SerializableSkullMeta.java @@ -3,7 +3,9 @@ import java.io.ByteArrayInputStream; import java.io.ObjectInputStream; import java.io.Serializable; +import java.util.UUID; +import org.bukkit.Bukkit; import org.bukkit.Material; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; @@ -15,15 +17,15 @@ public class SerializableSkullMeta extends SerializableItemMeta implements Serializable { - private static final long serialVersionUID = -1095975801937823837L; - - private String owner; + private static final long serialVersionUID = -711270187445211416L; + + private UUID owner; public SerializableSkullMeta(ItemMeta im) { super(im); if (im instanceof SkullMeta) { SkullMeta sm = (SkullMeta)im; - this.owner = sm.getOwner(); + this.owner = sm.getOwningPlayer().getUniqueId(); } } @@ -36,7 +38,7 @@ public SerializableSkullMeta(String base64String) { ois.close(); if (!(o instanceof SerializableSkullMeta)) {return;} SerializableSkullMeta ssm = (SerializableSkullMeta)o; - this.owner = ssm.getOwner(); + this.owner = ssm.getOwnerUUID(); } catch (Exception e) { } @@ -52,11 +54,15 @@ public ItemMeta getItemMeta() { for (SerializableEnchantment se:enchantments) { sm.addEnchant(se.getEnchantment(), se.getLvl(), true); } - sm.setOwner(owner); + sm.setOwningPlayer(Bukkit.getOfflinePlayer(owner)); return sm; } - public String getOwner() { + public String getOwnerName() { + return Bukkit.getPlayer(owner).getDisplayName(); + } + + public UUID getOwnerUUID() { return owner; } From f3a46566dadecf106f73454396bf51189941cfd2 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sat, 21 Jul 2018 12:07:48 +0200 Subject: [PATCH 05/49] Breaking? Updated Enchantments Enchantments have been updated to use NamespacedKeys. Currently this only works for vanilla enchantments, other enchantments break! The getEnchantmentName() method has been refactored to return NamespacedKey and is now called getEnchantmentKey() The method getEnchantmentKeyString() method has been added, which returns the Key String of the NamespacedKey referencing Classes have been updated accordingly --- .../hyperconomy/bukkit/BukkitCommon.java | 4 ++-- .../hyperconomy/bukkit/BukkitConnector.java | 4 ++-- .../hyperconomy/inventory/HEnchantment.java | 16 +++++++++++----- .../hyperconomy/inventory/HItemMeta.java | 2 +- .../hyperconomy/tradeobject/TradeEnchant.java | 2 +- 5 files changed, 17 insertions(+), 11 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/bukkit/BukkitCommon.java b/src/main/java/regalowl/hyperconomy/bukkit/BukkitCommon.java index 9e5cd6f7..b8493b5a 100644 --- a/src/main/java/regalowl/hyperconomy/bukkit/BukkitCommon.java +++ b/src/main/java/regalowl/hyperconomy/bukkit/BukkitCommon.java @@ -531,7 +531,7 @@ public ItemStack getItemStack(HItemStack hItemStack) { itemMeta.setDisplayName(hItemMeta.getDisplayName()); itemMeta.setLore(hItemMeta.getLore()); for (HEnchantment se:hItemMeta.getEnchantments()) { - itemMeta.addEnchant(Enchantment.getByName(se.getEnchantmentName()), se.getLvl(), true); + itemMeta.addEnchant(Enchantment.getByKey(se.getEnchantmentKey()), se.getLvl(), true); } for (HItemFlag f:hItemMeta.getItemFlags()) { itemMeta.addItemFlags(ItemFlag.valueOf(f.getItemFlag())); @@ -545,7 +545,7 @@ public ItemStack getItemStack(HItemStack hItemStack) { HEnchantmentStorageMeta sItemMeta = (HEnchantmentStorageMeta)hItemMeta; EnchantmentStorageMeta esm = (EnchantmentStorageMeta)itemMeta; for (HEnchantment se:sItemMeta.getEnchantments()) { - esm.addStoredEnchant(Enchantment.getByName(se.getEnchantmentName()), se.getLvl(), true); + esm.addStoredEnchant(Enchantment.getByKey(se.getEnchantmentKey()), se.getLvl(), true); } } else if (hItemMeta instanceof HBookMeta) { HBookMeta sItemMeta = (HBookMeta)hItemMeta; diff --git a/src/main/java/regalowl/hyperconomy/bukkit/BukkitConnector.java b/src/main/java/regalowl/hyperconomy/bukkit/BukkitConnector.java index 636f43de..d268bc02 100644 --- a/src/main/java/regalowl/hyperconomy/bukkit/BukkitConnector.java +++ b/src/main/java/regalowl/hyperconomy/bukkit/BukkitConnector.java @@ -343,8 +343,8 @@ public HLocation getLocation(HyperPlayer hp) { @Override public boolean conflictsWith(HEnchantment e1, HEnchantment e2) { - Enchantment ench1 = Enchantment.getByName(e1.getEnchantmentName()); - Enchantment ench2 = Enchantment.getByName(e2.getEnchantmentName()); + Enchantment ench1 = Enchantment.getByKey(e1.getEnchantmentKey()); + Enchantment ench2 = Enchantment.getByKey(e2.getEnchantmentKey()); return ench1.conflictsWith(ench2); } diff --git a/src/main/java/regalowl/hyperconomy/inventory/HEnchantment.java b/src/main/java/regalowl/hyperconomy/inventory/HEnchantment.java index ce92ae10..29f2c97b 100644 --- a/src/main/java/regalowl/hyperconomy/inventory/HEnchantment.java +++ b/src/main/java/regalowl/hyperconomy/inventory/HEnchantment.java @@ -3,16 +3,18 @@ import java.util.HashMap; +import org.bukkit.NamespacedKey; + import regalowl.simpledatalib.CommonFunctions; public class HEnchantment { - private String enchantment; + private NamespacedKey enchantment; private int lvl; public HEnchantment(String enchantment, int lvl) { - this.enchantment = enchantment; + this.enchantment = NamespacedKey.minecraft(enchantment); this.lvl = lvl; } @@ -23,22 +25,26 @@ public HEnchantment(HEnchantment he) { public String serialize() { HashMap data = new HashMap(); - data.put("enchantment", enchantment); + data.put("enchantment", enchantment.getKey()); data.put("lvl", lvl+""); return CommonFunctions.implodeMap(data); } public HEnchantment(String serialized) { HashMap data = CommonFunctions.explodeMap(serialized); - this.enchantment = data.get("enchantment"); + this.enchantment = NamespacedKey.minecraft(data.get("enchantment")); this.lvl = Integer.parseInt(data.get("lvl")); } - public String getEnchantmentName() { + public NamespacedKey getEnchantmentKey() { return enchantment; } + public String getEnchantmentKeyString() { + return enchantment.getKey(); + } + public int getLvl() { return lvl; } diff --git a/src/main/java/regalowl/hyperconomy/inventory/HItemMeta.java b/src/main/java/regalowl/hyperconomy/inventory/HItemMeta.java index ebca5d7f..940308a5 100644 --- a/src/main/java/regalowl/hyperconomy/inventory/HItemMeta.java +++ b/src/main/java/regalowl/hyperconomy/inventory/HItemMeta.java @@ -101,7 +101,7 @@ public ArrayList displayInfo(HyperPlayer p, String color1, String color2 String enchantString = ""; if (enchantments != null && enchantments.size() > 0) { for(HEnchantment se:enchantments) { - enchantString += se.getEnchantmentName() + ","; + enchantString += se.getEnchantmentKey() + ","; } enchantString = enchantString.substring(0, enchantString.length() - 1); } diff --git a/src/main/java/regalowl/hyperconomy/tradeobject/TradeEnchant.java b/src/main/java/regalowl/hyperconomy/tradeobject/TradeEnchant.java index c1b43dbb..bcd54486 100755 --- a/src/main/java/regalowl/hyperconomy/tradeobject/TradeEnchant.java +++ b/src/main/java/regalowl/hyperconomy/tradeobject/TradeEnchant.java @@ -25,7 +25,7 @@ private HEnchantment getHEnchant() { } @Override public String getEnchantmentName() { - return getHEnchant().getEnchantmentName(); + return getHEnchant().getEnchantmentKeyString(); } From 81011ada80ea807726d8593ca2794450a25360fe Mon Sep 17 00:00:00 2001 From: Unknown Date: Sat, 21 Jul 2018 13:11:48 +0200 Subject: [PATCH 06/49] POM updated to spigot 1.13-pre7 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index ced80467..53b38a23 100644 --- a/pom.xml +++ b/pom.xml @@ -34,7 +34,7 @@ org.spigotmc spigot-api - 1.12.2-R0.1-SNAPSHOT + 1.13-pre7-R0.1-SNAPSHOT provided From a5932917a051cf8006a03f5c12ca2aa5b7ae56d6 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sat, 21 Jul 2018 13:44:07 +0200 Subject: [PATCH 07/49] Updated Plugin.yml --- src/main/resources/plugin.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index a9f0b709..d0650a3c 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -2,7 +2,8 @@ name: HyperConomy main: regalowl.hyperconomy.bukkit.BukkitConnector version: 0.975.8 author: RegalOwl -website: http://dev.bukkit.org/server-mods/hyperconomy/ +api-version: 1.13 +website: http://dev.bukkit.org/projects/hyperconomy/ softdepend: [HeroStronghold, Buycraft, Essentials, Vault] loadbefore: [] commands: From 0e4ca9e532de9dfca2b0ca565c57c28dc983d707 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sat, 21 Jul 2018 14:59:57 +0200 Subject: [PATCH 08/49] Updated links in readme --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 29abeaad..9c481934 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ HyperConomy is the all in one economy and shop plugin. It can be a simple chest Installation --------- -* Download HyperConomy releases from [BukkitDev](http://dev.bukkit.org/bukkit-plugins/hyperconomy/files/) or get the latest [development build](http://regalowl.net:8081/job/HyperConomy/). +* Download HyperConomy releases from [BukkitDev](http://dev.bukkit.org/projects/hyperconomy/files/) or get the latest [development build](http://regalowl.net:8081/job/HyperConomy/). * Place the HyperConomy jar file your plugins folder. * Restart your server. @@ -49,7 +49,7 @@ Releases Add-ons --------- -[HyperMerchant](http://dev.bukkit.org/bukkit-plugins/hypermerchant/) +[HyperMerchant](http://dev.bukkit.org/projects/hypermerchant/) HyperMerchant is a graphical user interface for your players to use to interact with HyperConomy shops. It is also includes the ability to easily create Citizens npc shopkeepers for your HyperConomy shops. @@ -76,7 +76,7 @@ Links [Documentation Wiki](https://github.com/RegalOwl/HyperConomy-Documentation) -[BukkitDev Page](http://dev.bukkit.org/bukkit-plugins/hyperconomy/) +[BukkitDev Page](http://dev.bukkit.org/projects/hyperconomy/) [Spigot Page](https://www.spigotmc.org/resources/hyperconomy.4602/) From 30c297a9c9739520f4cd05192e68345e0faf8e90 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 11:54:42 +0200 Subject: [PATCH 09/49] Fixed Serialization error --- .../serializable/SerializableEnchantment.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/serializable/SerializableEnchantment.java b/src/main/java/regalowl/hyperconomy/serializable/SerializableEnchantment.java index e485743f..a23d0841 100644 --- a/src/main/java/regalowl/hyperconomy/serializable/SerializableEnchantment.java +++ b/src/main/java/regalowl/hyperconomy/serializable/SerializableEnchantment.java @@ -13,11 +13,11 @@ public class SerializableEnchantment extends SerializableObject implements Serializable { private static final long serialVersionUID = -5705303756771850224L; - private NamespacedKey enchantment; + private String enchantment; private int lvl; public SerializableEnchantment(Enchantment e, int lvl) { - this.enchantment = e.getKey(); + this.enchantment = e.getKey().getKey(); this.lvl = lvl; } @@ -29,7 +29,7 @@ public SerializableEnchantment(String base64String) { ois.close(); if (!(o instanceof SerializableEnchantment)) {return;} SerializableEnchantment se = (SerializableEnchantment)o; - this.enchantment = se.getEnchantmentName(); + this.enchantment = se.getEnchantmentName().getKey(); this.lvl = se.getLvl(); } catch (Exception e) { @@ -37,11 +37,11 @@ public SerializableEnchantment(String base64String) { } public Enchantment getEnchantment() { - return Enchantment.getByKey(enchantment); + return Enchantment.getByKey(NamespacedKey.minecraft(enchantment)); } public NamespacedKey getEnchantmentName() { - return enchantment; + return NamespacedKey.minecraft(enchantment); } public int getLvl() { From 2c0ea2122407ff03fdb5d30867a78a7ee462e540 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 11:58:01 +0200 Subject: [PATCH 10/49] Simplified HyperAPI.checkHash --- src/main/java/regalowl/hyperconomy/HyperAPI.java | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/HyperAPI.java b/src/main/java/regalowl/hyperconomy/HyperAPI.java index e72401fe..330b8e54 100644 --- a/src/main/java/regalowl/hyperconomy/HyperAPI.java +++ b/src/main/java/regalowl/hyperconomy/HyperAPI.java @@ -50,15 +50,8 @@ public String getPlayerShop(HyperPlayer player) { } public boolean checkHash(String player, String SHA256Hash) { - if (hc.getHyperPlayerManager().hyperPlayerExists(player)) { - if (hc.getHyperPlayerManager().getHyperPlayer(player).getHash().equals(SHA256Hash)) { - return true; - } else { - return false; - } - } else { - return false; - } + return hc.getHyperPlayerManager().hyperPlayerExists(player) + && hc.getHyperPlayerManager().getHyperPlayer(player).getHash().equals(SHA256Hash); } From ee7dfc0f7408a01d7b4b5efb54e46d9409217690 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 11:58:46 +0200 Subject: [PATCH 11/49] Fixed missing @Override annotation in HyperAPI --- .../java/regalowl/hyperconomy/HyperAPI.java | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/src/main/java/regalowl/hyperconomy/HyperAPI.java b/src/main/java/regalowl/hyperconomy/HyperAPI.java index 330b8e54..87317a5e 100644 --- a/src/main/java/regalowl/hyperconomy/HyperAPI.java +++ b/src/main/java/regalowl/hyperconomy/HyperAPI.java @@ -49,12 +49,14 @@ public String getPlayerShop(HyperPlayer player) { } } + @Override public boolean checkHash(String player, String SHA256Hash) { return hc.getHyperPlayerManager().hyperPlayerExists(player) && hc.getHyperPlayerManager().getHyperPlayer(player).getHash().equals(SHA256Hash); } + @Override public String getSalt(String player) { if (hc.getHyperPlayerManager().hyperPlayerExists(player)) { return hc.getHyperPlayerManager().getHyperPlayer(player).getSalt(); @@ -64,11 +66,13 @@ public String getSalt(String player) { } + @Override public String getDefaultServerShopAccountName() { return hc.getConf().getString("shop.default-server-shop-account"); } + @Override public boolean isItemDisplay(HItem item) { try { if (item == null) { @@ -86,10 +90,12 @@ public boolean isItemDisplay(HItem item) { } } + @Override public Shop getShop(String name) { return hc.getHyperShopManager().getShop(name); } + @Override public ServerShop getServerShop(String name) { Shop s = hc.getHyperShopManager().getShop(name); if (s instanceof ServerShop) { @@ -98,6 +104,7 @@ public ServerShop getServerShop(String name) { return null; } + @Override public PlayerShop getPlayerShop(String name) { Shop s = hc.getHyperShopManager().getShop(name); if (s instanceof PlayerShop) { @@ -129,6 +136,7 @@ public ArrayList getPlayerShopList() { } + @Override public EnchantmentClass getEnchantmentClass(HItemStack stack) { return EnchantmentClass.fromString(stack.getMaterial()); } @@ -138,19 +146,25 @@ public EnchantmentClass getEnchantmentClass(HItemStack stack) { + @Override public TradeObject getHyperObject(String name, String economy) { HyperEconomy he = hc.getDataManager().getEconomy(economy); return he.getTradeObject(name); } + @Override public TradeObject getHyperObject(HItemStack stack, String economy) { HyperEconomy he = hc.getDataManager().getEconomy(economy); return he.getTradeObject(stack); } + + @Override public TradeObject getHyperObject(HItemStack stack, String economy, Shop s) { HyperEconomy he = hc.getDataManager().getEconomy(economy); return he.getTradeObject(stack, s); } + + @Override public TradeObject getHyperObject(String name, String economy, Shop s) { HyperEconomy he = hc.getDataManager().getEconomy(economy); return he.getTradeObject(name, s); @@ -159,6 +173,7 @@ public TradeObject getHyperObject(String name, String economy, Shop s) { + @Override public HyperPlayer getHyperPlayer(String name) { HyperPlayerManager hpm = hc.getHyperPlayerManager(); if (hpm.hyperPlayerExists(name)) { @@ -167,6 +182,8 @@ public HyperPlayer getHyperPlayer(String name) { return null; } } + + @Override public HyperPlayer getHyperPlayer(UUID uuid) { HyperPlayerManager hpm = hc.getHyperPlayerManager(); if (hpm.hyperPlayerExistsWithUUID(uuid)) { @@ -196,6 +213,7 @@ public HyperPlayer createHyperPlayer(String name) { + @Override public ArrayList getEnchantmentHyperObjects(HItemStack stack, String player) { DataManager dm = hc.getDataManager(); ArrayList objects = new ArrayList(); @@ -208,6 +226,7 @@ public ArrayList getEnchantmentHyperObjects(HItemStack stack, Strin return objects; } + @Override public TransactionResponse buy(HyperPlayer hp, TradeObject o, int amount) { PlayerTransaction pt = new PlayerTransaction(TransactionType.BUY); pt.setHyperObject(o); @@ -215,6 +234,7 @@ public TransactionResponse buy(HyperPlayer hp, TradeObject o, int amount) { return hp.processTransaction(pt); } + @Override public TransactionResponse buy(HyperPlayer hp, TradeObject o, int amount, Shop shop) { PlayerTransaction pt = new PlayerTransaction(TransactionType.BUY); pt.setHyperObject(o); @@ -223,6 +243,7 @@ public TransactionResponse buy(HyperPlayer hp, TradeObject o, int amount, Shop s return hp.processTransaction(pt); } + @Override public TransactionResponse sell(HyperPlayer hp, TradeObject o, int amount ) { PlayerTransaction pt = new PlayerTransaction(TransactionType.SELL); pt.setHyperObject(o); @@ -230,6 +251,7 @@ public TransactionResponse sell(HyperPlayer hp, TradeObject o, int amount ) { return hp.processTransaction(pt); } + @Override public TransactionResponse sell(HyperPlayer hp, TradeObject o, int amount, Shop shop) { PlayerTransaction pt = new PlayerTransaction(TransactionType.SELL); pt.setHyperObject(o); @@ -238,11 +260,13 @@ public TransactionResponse sell(HyperPlayer hp, TradeObject o, int amount, Shop return hp.processTransaction(pt); } + @Override public TransactionResponse sellAll(HyperPlayer hp) { Sellall sa = new Sellall(hc); return sa.sellAll(hp, null); } + @Override public ArrayList getAvailableObjects(HyperPlayer p) { Shop s = hc.getHyperShopManager().getShop(p); if (s != null) { @@ -251,6 +275,7 @@ public ArrayList getAvailableObjects(HyperPlayer p) { return new ArrayList(); } + @Override public ArrayList getAvailableObjects(HyperPlayer p, int startingPosition, int limit) { ArrayList availableObjects = getAvailableObjects(p); ArrayList availableSubset = new ArrayList(); @@ -262,6 +287,7 @@ public ArrayList getAvailableObjects(HyperPlayer p, int startingPos return availableSubset; } + @Override public ArrayList getAvailableObjects(String shopname) { Shop s = hc.getHyperShopManager().getShop(shopname); if (s != null) { @@ -270,6 +296,7 @@ public ArrayList getAvailableObjects(String shopname) { return new ArrayList(); } + @Override public ArrayList getAvailableObjects(String shopname, int startingPosition, int limit) { ArrayList availableObjects = getAvailableObjects(shopname); ArrayList availableSubset = new ArrayList(); @@ -283,6 +310,7 @@ public ArrayList getAvailableObjects(String shopname, int startingP + @Override public TransactionResponse sellAll(HyperPlayer hp, HInventory inventory) { DataManager em = hc.getDataManager(); HyperEconomy he = hp.getHyperEconomy(); From aefb742e98bddb07208475711086161a1739b45f Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 12:00:15 +0200 Subject: [PATCH 12/49] Removed several blank lines --- .../java/regalowl/hyperconomy/HyperAPI.java | 35 ------------------- 1 file changed, 35 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/HyperAPI.java b/src/main/java/regalowl/hyperconomy/HyperAPI.java index 87317a5e..4c03584f 100644 --- a/src/main/java/regalowl/hyperconomy/HyperAPI.java +++ b/src/main/java/regalowl/hyperconomy/HyperAPI.java @@ -1,16 +1,6 @@ package regalowl.hyperconomy; import java.util.ArrayList; - - - - - - - - - - import java.util.UUID; import regalowl.hyperconomy.account.HyperPlayer; @@ -55,7 +45,6 @@ public boolean checkHash(String player, String SHA256Hash) { && hc.getHyperPlayerManager().getHyperPlayer(player).getHash().equals(SHA256Hash); } - @Override public String getSalt(String player) { if (hc.getHyperPlayerManager().hyperPlayerExists(player)) { @@ -65,13 +54,11 @@ public String getSalt(String player) { } } - @Override public String getDefaultServerShopAccountName() { return hc.getConf().getString("shop.default-server-shop-account"); } - @Override public boolean isItemDisplay(HItem item) { try { @@ -135,17 +122,11 @@ public ArrayList getPlayerShopList() { return playerShops; } - @Override public EnchantmentClass getEnchantmentClass(HItemStack stack) { return EnchantmentClass.fromString(stack.getMaterial()); } - - - - - @Override public TradeObject getHyperObject(String name, String economy) { HyperEconomy he = hc.getDataManager().getEconomy(economy); @@ -170,9 +151,6 @@ public TradeObject getHyperObject(String name, String economy, Shop s) { return he.getTradeObject(name, s); } - - - @Override public HyperPlayer getHyperPlayer(String name) { HyperPlayerManager hpm = hc.getHyperPlayerManager(); @@ -209,10 +187,6 @@ public HyperPlayer createHyperPlayer(String name) { return hpm.getHyperPlayer(name); } - - - - @Override public ArrayList getEnchantmentHyperObjects(HItemStack stack, String player) { DataManager dm = hc.getDataManager(); @@ -308,8 +282,6 @@ public ArrayList getAvailableObjects(String shopname, int startingP return availableSubset; } - - @Override public TransactionResponse sellAll(HyperPlayer hp, HInventory inventory) { DataManager em = hc.getDataManager(); @@ -344,11 +316,4 @@ public boolean addItemToEconomy(HItemStack stack, String economyName, String req return true; //return ai.addItem(hobj, economyName); } - - - - - - - } From 423e1fe0e8b6ff9a24bb93588f548bb3ef805cde Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 12:04:55 +0200 Subject: [PATCH 13/49] Simplified several return statements Java does respect order of conditions unlike other C-like languages. --- .../java/regalowl/hyperconomy/HyperAPI.java | 25 ++++--------------- 1 file changed, 5 insertions(+), 20 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/HyperAPI.java b/src/main/java/regalowl/hyperconomy/HyperAPI.java index 4c03584f..724a9c16 100644 --- a/src/main/java/regalowl/hyperconomy/HyperAPI.java +++ b/src/main/java/regalowl/hyperconomy/HyperAPI.java @@ -32,11 +32,7 @@ public HyperAPI(HyperConomy hc) { public String getPlayerShop(HyperPlayer player) { Shop shop = hc.getHyperShopManager().getShop(player); - if (null == shop){ - return ""; - } else { - return shop.getName(); - } + return shop == null ? "" : shop.getName(); } @Override @@ -47,11 +43,8 @@ public boolean checkHash(String player, String SHA256Hash) { @Override public String getSalt(String player) { - if (hc.getHyperPlayerManager().hyperPlayerExists(player)) { - return hc.getHyperPlayerManager().getHyperPlayer(player).getSalt(); - } else { - return ""; - } + return hc.getHyperPlayerManager().hyperPlayerExists(player) ? "" + : hc.getHyperPlayerManager().getHyperPlayer(player).getSalt(); } @Override @@ -154,21 +147,13 @@ public TradeObject getHyperObject(String name, String economy, Shop s) { @Override public HyperPlayer getHyperPlayer(String name) { HyperPlayerManager hpm = hc.getHyperPlayerManager(); - if (hpm.hyperPlayerExists(name)) { - return hpm.getHyperPlayer(name); - } else { - return null; - } + return hpm.hyperPlayerExists(name) ? hpm.getHyperPlayer(name) : null; } @Override public HyperPlayer getHyperPlayer(UUID uuid) { HyperPlayerManager hpm = hc.getHyperPlayerManager(); - if (hpm.hyperPlayerExistsWithUUID(uuid)) { - return hpm.getHyperPlayer(uuid); - } else { - return null; - } + return hpm.hyperPlayerExistsWithUUID(uuid) ? hpm.getHyperPlayer(uuid) : null; } @Override public boolean hyperPlayerExists(String name) { From ea4afbdda38f456dca9ae882833dd478c35aab11 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 12:05:59 +0200 Subject: [PATCH 14/49] Fixed wrongly check NullPointer --- src/main/java/regalowl/hyperconomy/DataManager.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/regalowl/hyperconomy/DataManager.java b/src/main/java/regalowl/hyperconomy/DataManager.java index 1c756839..af0d492f 100755 --- a/src/main/java/regalowl/hyperconomy/DataManager.java +++ b/src/main/java/regalowl/hyperconomy/DataManager.java @@ -443,8 +443,8 @@ public HyperEconomy getDefaultEconomy() { public boolean economyExists(String economy) { - if (economy.equalsIgnoreCase("base")) return false; if (economy == null || economy == "") {return false;} + if (economy.equalsIgnoreCase("base")) return false; for (Map.Entry entry : economies.entrySet()) { HyperEconomy he = entry.getValue(); if (he.getName().equalsIgnoreCase(economy)) { From 945303474a19e80dcbc0caaff615213e00bc5658 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 12:07:34 +0200 Subject: [PATCH 15/49] Converted into lambda expression Fixes missing @override and is easier to read --- src/main/java/regalowl/hyperconomy/DataManager.java | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/DataManager.java b/src/main/java/regalowl/hyperconomy/DataManager.java index af0d492f..cb96d69d 100755 --- a/src/main/java/regalowl/hyperconomy/DataManager.java +++ b/src/main/java/regalowl/hyperconomy/DataManager.java @@ -103,11 +103,7 @@ public void handleHyperEvent(HyperEvent event) { if (devent.loadType == DataLoadType.START) { if (loadActive) {return;} loadActive = true; - new Thread(new Runnable() { - public void run() { - loadEconomies(); - } - }).start(); + new Thread(() -> loadEconomies()).start(); } else if (devent.loadType == DataLoadType.CHEST_SHOPS) { loadAllCategories(); hc.getHyperEventHandler().fireEventFromAsyncThread(new DataLoadEvent(DataLoadType.COMPLETE)); From ac46132a91633b696ce85a6d95835bf5a23fd966 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 12:12:54 +0200 Subject: [PATCH 16/49] Missing @Override --- src/main/java/regalowl/hyperconomy/account/HyperBank.java | 1 + .../java/regalowl/hyperconomy/account/HyperPlayer.java | 8 ++++++++ .../regalowl/hyperconomy/account/HyperPlayerManager.java | 8 +++----- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/account/HyperBank.java b/src/main/java/regalowl/hyperconomy/account/HyperBank.java index b5bc95df..137f486a 100755 --- a/src/main/java/regalowl/hyperconomy/account/HyperBank.java +++ b/src/main/java/regalowl/hyperconomy/account/HyperBank.java @@ -240,6 +240,7 @@ private void saveMembers() { hc.getSQLWrite().addToQueue(ws); } + @Override public void sendMessage(String message) { for (HyperPlayer owner: getOwners()) { owner.sendMessage(message); diff --git a/src/main/java/regalowl/hyperconomy/account/HyperPlayer.java b/src/main/java/regalowl/hyperconomy/account/HyperPlayer.java index 139eb0c6..657e55a3 100644 --- a/src/main/java/regalowl/hyperconomy/account/HyperPlayer.java +++ b/src/main/java/regalowl/hyperconomy/account/HyperPlayer.java @@ -129,6 +129,7 @@ public boolean validUUID() { return validUUID; } + @Override public String getName() { if (name == null || name == "") { return uuid; @@ -154,6 +155,7 @@ public HyperEconomy getHyperEconomy() { return em.getEconomy(economy); } + @Override public double getBalance() { if (hc.getMC().useExternalEconomy()) { checkExternalAccount(); @@ -203,6 +205,7 @@ public void delete() { hc.getSQLWrite().performDelete("hyperconomy_players", conditions); } + @Override public void setName(String name) { hc.getHyperPlayerManager().removeHyperPlayer(this); HashMap conditions = new HashMap(); @@ -272,6 +275,7 @@ public HInventory getInventory() { return hc.getMC().getInventory(this); } + @Override public void sendMessage(String message) { hc.getMC().sendMessage(this, message); } @@ -350,6 +354,7 @@ public boolean hasBuyPermission(Shop s) { } + @Override public boolean hasBalance(double amount) { if ((getBalance() - amount) >= 0) { return true; @@ -358,6 +363,7 @@ public boolean hasBalance(double amount) { } + @Override public void setBalance(double balance) { if (hc.getMC().useExternalEconomy()) { checkExternalAccount(); @@ -379,6 +385,7 @@ public void setInternalBalance(double balance) { hc.getHyperEventHandler().fireEvent(new HyperPlayerModificationEvent(this)); } + @Override public void deposit(double amount) { if (hc.getMC().useExternalEconomy()) { checkExternalAccount(); @@ -397,6 +404,7 @@ public void deposit(double amount) { } + @Override public void withdraw(double amount) { if (hc.getMC().useExternalEconomy()) { checkExternalAccount(); diff --git a/src/main/java/regalowl/hyperconomy/account/HyperPlayerManager.java b/src/main/java/regalowl/hyperconomy/account/HyperPlayerManager.java index e28fd5d8..049a2e86 100644 --- a/src/main/java/regalowl/hyperconomy/account/HyperPlayerManager.java +++ b/src/main/java/regalowl/hyperconomy/account/HyperPlayerManager.java @@ -40,13 +40,10 @@ public void handleHyperEvent(HyperEvent event) { if (event instanceof DataLoadEvent) { DataLoadEvent devent = (DataLoadEvent)event; if (devent.loadType == DataLoadType.ECONOMY) { - new Thread(new Runnable() { - public void run() { - loadData(); - } - }).start(); + new Thread(() -> loadData()).start(); } else if (devent.loadType == DataLoadType.BANK) { hc.getMC().runTask(new Runnable() { + @Override public void run() { if (!hc.getDataManager().accountExists(defaultServerShopAccount)) { HyperPlayer defaultAccount = new HyperPlayer(hc, defaultServerShopAccount); @@ -101,6 +98,7 @@ private void loadData() { } playerData.close(); hc.getMC().runTask(new Runnable() { + @Override public void run() { for (HyperPlayer hp:hyperPlayers.values()) { hp.validate(); From 4e8078860b4400eeafc690aad1242fdf83205db6 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 12:15:06 +0200 Subject: [PATCH 17/49] Fixed condition to actually check for null Java checks in CNF not DNF --- src/main/java/regalowl/hyperconomy/bukkit/BukkitCommon.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/bukkit/BukkitCommon.java b/src/main/java/regalowl/hyperconomy/bukkit/BukkitCommon.java index b8493b5a..82751e77 100644 --- a/src/main/java/regalowl/hyperconomy/bukkit/BukkitCommon.java +++ b/src/main/java/regalowl/hyperconomy/bukkit/BukkitCommon.java @@ -122,7 +122,7 @@ protected Sign getSign(HLocation l) { protected boolean isTransactionSign(HLocation l) { Block b = getBlock(l); - if (b != null && b.getType().equals(Material.SIGN) || b != null && b.getType().equals(Material.WALL_SIGN)) { + if (b != null && (b.getType().equals(Material.SIGN) || b.getType().equals(Material.WALL_SIGN))) { Sign s = (Sign) b.getState(); String line3 = ChatColor.stripColor(s.getLine(2)).trim(); if (line3.equalsIgnoreCase("[sell:buy]") || line3.equalsIgnoreCase("[sell]") || line3.equalsIgnoreCase("[buy]")) { @@ -134,7 +134,7 @@ protected boolean isTransactionSign(HLocation l) { protected boolean isInfoSign(HLocation l) { Block b = getBlock(l); - if (b != null && b.getType().equals(Material.SIGN) || b != null && b.getType().equals(Material.WALL_SIGN)) { + if (b != null && (b.getType().equals(Material.SIGN) || b.getType().equals(Material.WALL_SIGN))) { Sign s = (Sign) b.getState(); String type = ChatColor.stripColor(s.getLine(2)).trim().replace(":", "").replace(" ", ""); if (SignType.isSignType(type)) return true; From dc8b6253a99ce3eefd52af3849e2ba14c4debe1d Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 12:21:14 +0200 Subject: [PATCH 18/49] Simplified return --- .../java/regalowl/hyperconomy/bukkit/BukkitEconomy.java | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/bukkit/BukkitEconomy.java b/src/main/java/regalowl/hyperconomy/bukkit/BukkitEconomy.java index 3b75b8e7..8f40adef 100644 --- a/src/main/java/regalowl/hyperconomy/bukkit/BukkitEconomy.java +++ b/src/main/java/regalowl/hyperconomy/bukkit/BukkitEconomy.java @@ -88,11 +88,7 @@ public boolean hasBank(String bankName) { public double getBankBalance(String bankName) { if (bankName == null || bankName.equals("")) return 0; EconomyResponse response = e.bankBalance(bankName); - if (response.type.equals(ResponseType.SUCCESS)) { - return response.balance; - } else { - return 0; - } + return response.type.equals(ResponseType.SUCCESS) ? response.balance : 0; } @Override From 73c91e32b1a7c3981ef221a7ba61dc187e38af59 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 12:22:05 +0200 Subject: [PATCH 19/49] Redundant null check ho can't be null at this location (checked ~10 lines above) --- .../java/regalowl/hyperconomy/bukkit/BukkitFrameShop.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/bukkit/BukkitFrameShop.java b/src/main/java/regalowl/hyperconomy/bukkit/BukkitFrameShop.java index 5e9cf3e6..0f801e3b 100644 --- a/src/main/java/regalowl/hyperconomy/bukkit/BukkitFrameShop.java +++ b/src/main/java/regalowl/hyperconomy/bukkit/BukkitFrameShop.java @@ -79,9 +79,7 @@ public BukkitFrameShop(HyperConomy hc, short mapId, HLocation l, TradeObject ho, this.to = ho; this.tradeAmount = amount; this.s = s; - if (ho != null) { - render(); - } + render(); } @Override From f9e4a6bf4995336ccd02b92da75e6704491b782d Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 12:22:40 +0200 Subject: [PATCH 20/49] More missing Overrides --- .../regalowl/hyperconomy/bukkit/BukkitFrameShopHandler.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/main/java/regalowl/hyperconomy/bukkit/BukkitFrameShopHandler.java b/src/main/java/regalowl/hyperconomy/bukkit/BukkitFrameShopHandler.java index 01b8e95d..01306f95 100644 --- a/src/main/java/regalowl/hyperconomy/bukkit/BukkitFrameShopHandler.java +++ b/src/main/java/regalowl/hyperconomy/bukkit/BukkitFrameShopHandler.java @@ -50,10 +50,12 @@ public BukkitFrameShopHandler(MineCraftConnector mc) { private void load() { new Thread(new Runnable() { + @Override public void run() { frameShops.clear(); dbData = hc.getSQLRead().select("SELECT * FROM hyperconomy_frame_shops"); hc.getMC().runTask(new Runnable() { + @Override public void run() { while (dbData.next()) { double x = dbData.getDouble("X"); @@ -89,11 +91,13 @@ public FrameShop getFrameShop(HLocation l) { return null; } + @Override public boolean frameShopExists(HLocation l) { if (getFrameShop(l) != null) return true; return false; } + @Override public void removeFrameShop(HLocation l) { HLocation loc = new HLocation(l); loc.convertToBlockLocation(); @@ -102,6 +106,7 @@ public void removeFrameShop(HLocation l) { } } + @Override public void createFrameShop(HLocation l, TradeObject ho, Shop s) { HLocation loc = new HLocation(l); loc.convertToBlockLocation(); From fbf8437b2a99665439befcb014bdb939aa2d1449 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 12:27:34 +0200 Subject: [PATCH 21/49] Simplified return and cleared several blank lines --- .../bukkit/Economy_HyperConomy.java | 40 +------------------ 1 file changed, 1 insertion(+), 39 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/bukkit/Economy_HyperConomy.java b/src/main/java/regalowl/hyperconomy/bukkit/Economy_HyperConomy.java index 36077908..46752e02 100755 --- a/src/main/java/regalowl/hyperconomy/bukkit/Economy_HyperConomy.java +++ b/src/main/java/regalowl/hyperconomy/bukkit/Economy_HyperConomy.java @@ -39,18 +39,13 @@ public Economy_HyperConomy(HyperConomy hc) { } @Override public boolean isEnabled() { - if (hc == null) { - return false; - } else { - return hc.getMC().isEnabled(); - } + return hc == null ? false : hc.getMC().isEnabled(); } @Override public String getName() { return name; } - @Override public double getBalance(String playerName) { return hc.getEconomyAPI().getAccountBalance(playerName); @@ -68,7 +63,6 @@ public double getBalance(OfflinePlayer player, String world) { return getBalance(player.getName(), world); } - @Override public boolean createPlayerAccount(String playerName) { hc.getEconomyAPI().createAccount(playerName); @@ -87,7 +81,6 @@ public boolean createPlayerAccount(OfflinePlayer player, String worldName) { return createPlayerAccount(player.getName()); } - @Override public EconomyResponse withdrawPlayer(String playerName, double amount) { if (amount < 0) { @@ -117,8 +110,6 @@ public EconomyResponse withdrawPlayer(OfflinePlayer player, String worldName, do return withdrawPlayer(player.getName(), amount); } - - @Override public EconomyResponse depositPlayer(String playerName, double amount) { if (amount < 0) { @@ -144,7 +135,6 @@ public EconomyResponse depositPlayer(OfflinePlayer player, String worldName, dou return depositPlayer(player.getName(), amount); } - @Override public String format(double amount) { return hc.getEconomyAPI().getAmountAsString(amount); @@ -158,7 +148,6 @@ public String currencyNamePlural() { return hc.getEconomyAPI().currencyNamePlural(); } - @Override public boolean has(String playerName, double amount) { return hc.getEconomyAPI().accountHasBalance(playerName, amount); @@ -176,7 +165,6 @@ public boolean has(OfflinePlayer player, String worldName, double amount) { return has(player.getName(), amount); } - @Override public boolean hasAccount(String playerName) { return hc.getEconomyAPI().hasAccount(playerName); @@ -200,9 +188,6 @@ public int fractionalDigits() { return hc.getEconomyAPI().fractionalDigits(); } - - - @Override public EconomyResponse createBank(String name, String player) { DataManager dm = hc.getDataManager(); @@ -347,27 +332,4 @@ public List getBanks() { public boolean hasBankSupport() { return true; } - - - - - - - - - - - - - - - - - - - - - - - } \ No newline at end of file From a10634d69958ad6025d8902ffaee2fc5b0320a00 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 12:29:30 +0200 Subject: [PATCH 22/49] Missing Override annotations (command-package) --- src/main/java/regalowl/hyperconomy/command/Additem.java | 1 + src/main/java/regalowl/hyperconomy/command/Audit.java | 6 ++++-- src/main/java/regalowl/hyperconomy/command/HcCommand.java | 1 + src/main/java/regalowl/hyperconomy/command/Hcdata.java | 2 ++ src/main/java/regalowl/hyperconomy/command/Hctest.java | 1 + src/main/java/regalowl/hyperconomy/command/Hyperlog.java | 6 ++++-- src/main/java/regalowl/hyperconomy/command/Lowstock.java | 3 ++- src/main/java/regalowl/hyperconomy/command/Repairsigns.java | 1 + src/main/java/regalowl/hyperconomy/command/Topitems.java | 3 ++- 9 files changed, 18 insertions(+), 6 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/command/Additem.java b/src/main/java/regalowl/hyperconomy/command/Additem.java index 4e840607..99e828e9 100644 --- a/src/main/java/regalowl/hyperconomy/command/Additem.java +++ b/src/main/java/regalowl/hyperconomy/command/Additem.java @@ -30,6 +30,7 @@ public Additem(HyperConomy hc) { } + @Override public CommandData onCommand(CommandData data) { if (!validate(data)) return data; try { diff --git a/src/main/java/regalowl/hyperconomy/command/Audit.java b/src/main/java/regalowl/hyperconomy/command/Audit.java index c249c6af..0815008b 100644 --- a/src/main/java/regalowl/hyperconomy/command/Audit.java +++ b/src/main/java/regalowl/hyperconomy/command/Audit.java @@ -40,14 +40,16 @@ public CommandData onCommand(CommandData d) { return data; } new Thread(new Runnable() { - public void run() { + @Override + public void run() { HyperAccount ha = dm.getAccount(account); account = ha.getName(); cbalance = ha.getBalance(); logbalance = getHyperLogTotal(account, "sale") - getHyperLogTotal(account, "purchase"); auditbalance = getAuditLogTotal(account); hc.getMC().runTask(new Runnable() { - public void run() { + @Override + public void run() { if (hp == null) { hc.getMC().logInfo(L.get("LINE_BREAK")); hc.getMC().logInfo(L.f(L.get("AUDIT_TRUE"), cbalance)); diff --git a/src/main/java/regalowl/hyperconomy/command/HcCommand.java b/src/main/java/regalowl/hyperconomy/command/HcCommand.java index fa3aa844..bed03c90 100644 --- a/src/main/java/regalowl/hyperconomy/command/HcCommand.java +++ b/src/main/java/regalowl/hyperconomy/command/HcCommand.java @@ -14,6 +14,7 @@ public HcCommand(HyperConomy hc) { super(hc, false); } + @Override public CommandData onCommand(CommandData data) { String args[] = data.getArgs(); HyperLock hl = hc.getHyperLock(); diff --git a/src/main/java/regalowl/hyperconomy/command/Hcdata.java b/src/main/java/regalowl/hyperconomy/command/Hcdata.java index 78a27f32..5429ee0c 100644 --- a/src/main/java/regalowl/hyperconomy/command/Hcdata.java +++ b/src/main/java/regalowl/hyperconomy/command/Hcdata.java @@ -43,6 +43,7 @@ public CommandData onCommand(CommandData data) { table = args[1]; if (table.equalsIgnoreCase("all")) { new Thread(new Runnable() { + @Override public void run() { for (String table:tables) { QueryResult data = hc.getSQLRead().select("SELECT * FROM hyperconomy_" + table); @@ -59,6 +60,7 @@ public void run() { return data; } new Thread(new Runnable() { + @Override public void run() { QueryResult data = hc.getSQLRead().select("SELECT * FROM hyperconomy_" + table); ft.makeFolder(folderPath + File.separator + "import_export"); diff --git a/src/main/java/regalowl/hyperconomy/command/Hctest.java b/src/main/java/regalowl/hyperconomy/command/Hctest.java index d6069532..1a8fb977 100755 --- a/src/main/java/regalowl/hyperconomy/command/Hctest.java +++ b/src/main/java/regalowl/hyperconomy/command/Hctest.java @@ -9,6 +9,7 @@ public Hctest(HyperConomy hc) { super(hc, false); } + @Override public CommandData onCommand(CommandData data) { if (!validate(data)) return data; /* diff --git a/src/main/java/regalowl/hyperconomy/command/Hyperlog.java b/src/main/java/regalowl/hyperconomy/command/Hyperlog.java index 8008109e..c89e9f8c 100644 --- a/src/main/java/regalowl/hyperconomy/command/Hyperlog.java +++ b/src/main/java/regalowl/hyperconomy/command/Hyperlog.java @@ -110,10 +110,12 @@ public CommandData onCommand(CommandData data) { statement += " ORDER BY TIME DESC"; new Thread(new Runnable() { - public void run() { + @Override + public void run() { result = getHyperLog(statement); hc.getMC().runTask(new Runnable() { - public void run() { + @Override + public void run() { int m = result.size(); if (m > 100) { m = 100; diff --git a/src/main/java/regalowl/hyperconomy/command/Lowstock.java b/src/main/java/regalowl/hyperconomy/command/Lowstock.java index bac5e191..b852ed3a 100644 --- a/src/main/java/regalowl/hyperconomy/command/Lowstock.java +++ b/src/main/java/regalowl/hyperconomy/command/Lowstock.java @@ -39,7 +39,8 @@ public CommandData onCommand(CommandData data) { } ArrayList allObjects = he.getTradeObjects(s); Collections.sort(allObjects, new Comparator(){ - public int compare(TradeObject to1, TradeObject to2) { + @Override + public int compare(TradeObject to1, TradeObject to2) { Double s1 = to1.getStock(); Double s2 = to2.getStock(); return s1.compareTo(s2); diff --git a/src/main/java/regalowl/hyperconomy/command/Repairsigns.java b/src/main/java/regalowl/hyperconomy/command/Repairsigns.java index 06b9c73b..9605719d 100644 --- a/src/main/java/regalowl/hyperconomy/command/Repairsigns.java +++ b/src/main/java/regalowl/hyperconomy/command/Repairsigns.java @@ -116,6 +116,7 @@ public CommandData onCommand(CommandData data) { if (signsRepaired > 0) { hc.getInfoSignHandler().reloadSigns(); hc.getMC().runTaskLater(new Runnable() { + @Override public void run() { hc.getInfoSignHandler().updateSigns(); } diff --git a/src/main/java/regalowl/hyperconomy/command/Topitems.java b/src/main/java/regalowl/hyperconomy/command/Topitems.java index 99d5eaea..ad05a6fa 100644 --- a/src/main/java/regalowl/hyperconomy/command/Topitems.java +++ b/src/main/java/regalowl/hyperconomy/command/Topitems.java @@ -39,7 +39,8 @@ public CommandData onCommand(CommandData data) { } ArrayList allObjects = he.getTradeObjects(s); Collections.sort(allObjects, new Comparator(){ - public int compare(TradeObject to1, TradeObject to2) { + @Override + public int compare(TradeObject to1, TradeObject to2) { Double s1 = to1.getStock(); Double s2 = to2.getStock(); if (s1 < s2) return 1; From 902ed579270257d2ce5139ad7ddd90d340bd8e79 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 12:31:49 +0200 Subject: [PATCH 23/49] Simplified condition shop can only be null at that location Cleared several blank lines --- .../regalowl/hyperconomy/command/Browseshop.java | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/command/Browseshop.java b/src/main/java/regalowl/hyperconomy/command/Browseshop.java index 40124069..67ed77b0 100644 --- a/src/main/java/regalowl/hyperconomy/command/Browseshop.java +++ b/src/main/java/regalowl/hyperconomy/command/Browseshop.java @@ -3,13 +3,6 @@ import java.util.ArrayList; import java.util.Collections; - - - - - - -import regalowl.simpledatalib.CommonFunctions; import regalowl.hyperconomy.HyperConomy; import regalowl.hyperconomy.HyperEconomy; import regalowl.hyperconomy.shop.HyperShopManager; @@ -20,6 +13,7 @@ import regalowl.hyperconomy.tradeobject.TradeObject; import regalowl.hyperconomy.tradeobject.TradeObjectStatus; import regalowl.hyperconomy.tradeobject.TradeObjectType; +import regalowl.simpledatalib.CommonFunctions; public class Browseshop extends BaseCommand implements HyperCommand { @@ -80,9 +74,7 @@ public CommandData onCommand(CommandData data) { } Shop shop = null; if (hp != null) { - if (!hsm.inAnyShop(hp)) { - shop = null; - } else { + if (hsm.inAnyShop(hp)) { shop = hsm.getShop(hp); } } From f49bd13a9f5ebffae76779cbfac7811c85c8cba1 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 12:35:36 +0200 Subject: [PATCH 24/49] Removed unnecessary casts --- src/main/java/regalowl/hyperconomy/HyperEconomy.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/HyperEconomy.java b/src/main/java/regalowl/hyperconomy/HyperEconomy.java index ddde8201..a45f17c3 100644 --- a/src/main/java/regalowl/hyperconomy/HyperEconomy.java +++ b/src/main/java/regalowl/hyperconomy/HyperEconomy.java @@ -274,7 +274,7 @@ public synchronized TradeObject getTradeObject(HEnchantment enchant, Shop s) { for (TradeObject ho:tradeObjects) { if (ho.getType() != TradeObjectType.ENCHANTMENT) {continue;} if (!ho.matchesEnchantment(enchant)) {continue;} - return (TradeObject) ((PlayerShop) s).getPlayerShopObject(ho); + return ((PlayerShop) s).getPlayerShopObject(ho); } } else { for (TradeObject ho:tradeObjects) { @@ -294,7 +294,7 @@ public synchronized TradeObject getTradeObject(HItemStack stack, Shop s) { TradeObject ho = tradeObjectsStackMap.get(stack.getStackComparisonData()); if (ho == null) return null; if (s != null && s instanceof PlayerShop) { - return (TradeObject) ((PlayerShop) s).getPlayerShopObject(ho); + return ((PlayerShop) s).getPlayerShopObject(ho); } return ho; } @@ -303,7 +303,7 @@ public synchronized TradeObject getTradeObject(String name, Shop s) { String sname = name.toLowerCase(); if (s != null && s instanceof PlayerShop) { if (tradeObjectsNameMap.containsKey(sname)) { - return (TradeObject) ((PlayerShop) s).getPlayerShopObject(tradeObjectsNameMap.get(sname)); + return ((PlayerShop) s).getPlayerShopObject(tradeObjectsNameMap.get(sname)); } else { hc.getDebugMode().debugWriteMessage("getTradeObject() returning null for given name: ["+name+"], shop: ["+s.getName()+"]"); return null; From 69aa6664a3f95f820279b0cd25fc332c697b08bf Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 12:36:17 +0200 Subject: [PATCH 25/49] Fixed @Override by converting to lambda --- .../java/regalowl/hyperconomy/account/HyperBankManager.java | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/account/HyperBankManager.java b/src/main/java/regalowl/hyperconomy/account/HyperBankManager.java index 5c778174..550d0189 100644 --- a/src/main/java/regalowl/hyperconomy/account/HyperBankManager.java +++ b/src/main/java/regalowl/hyperconomy/account/HyperBankManager.java @@ -26,11 +26,7 @@ public void handleHyperEvent(HyperEvent event) { if (event instanceof DataLoadEvent) { DataLoadEvent devent = (DataLoadEvent)event; if (!(devent.loadType == DataLoadType.PLAYER)) return; - new Thread(new Runnable() { - public void run() { - loadData(); - } - }).start(); + new Thread(() -> loadData()).start(); } } From debb3f83bcde6d929f429b2a56bebd5ccfbae517 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 12:36:50 +0200 Subject: [PATCH 26/49] Removed unnecessary cast --- src/main/java/regalowl/hyperconomy/account/HyperPlayer.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/regalowl/hyperconomy/account/HyperPlayer.java b/src/main/java/regalowl/hyperconomy/account/HyperPlayer.java index 657e55a3..ceef2329 100644 --- a/src/main/java/regalowl/hyperconomy/account/HyperPlayer.java +++ b/src/main/java/regalowl/hyperconomy/account/HyperPlayer.java @@ -450,7 +450,7 @@ public int getTotalXpPoints() { public int getLvlFromXP(int exp) { double lvlraw = (Math.sqrt((exp * 7.0) + 25.0) - 5.0) * (2.0 / 7.0); int lvl = (int) Math.floor(lvlraw); - if ((double) lvl > lvlraw) { + if (lvl > lvlraw) { lvl = lvl - 1; } return lvl; From fdfb7659be2a3d027ab3b5e3ebf016a713ddc170 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 12:43:27 +0200 Subject: [PATCH 27/49] hp can't be null --- src/main/java/regalowl/hyperconomy/display/InfoSignHandler.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/regalowl/hyperconomy/display/InfoSignHandler.java b/src/main/java/regalowl/hyperconomy/display/InfoSignHandler.java index 67a50790..ef1cdcfe 100644 --- a/src/main/java/regalowl/hyperconomy/display/InfoSignHandler.java +++ b/src/main/java/regalowl/hyperconomy/display/InfoSignHandler.java @@ -87,7 +87,7 @@ public void handleHyperEvent(HyperEvent event) { if (hp.hasPermission("hyperconomy.createsign")) { String[] lines = s.getLines(); String economy = "default"; - if (hp != null && hp.getEconomy() != null) { + if (hp.getEconomy() != null) { economy = hp.getEconomy(); } String objectName = lines[0].trim() + lines[1].trim(); From c82d2750abc0c70dd02013c85339b6b6257f8f58 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 12:44:17 +0200 Subject: [PATCH 28/49] Missing Overrides --- src/main/java/regalowl/hyperconomy/display/InfoSign.java | 2 ++ .../java/regalowl/hyperconomy/display/InfoSignHandler.java | 3 +++ .../java/regalowl/hyperconomy/display/ItemDisplayHandler.java | 3 +++ 3 files changed, 8 insertions(+) diff --git a/src/main/java/regalowl/hyperconomy/display/InfoSign.java b/src/main/java/regalowl/hyperconomy/display/InfoSign.java index e46f2ab2..941cd222 100644 --- a/src/main/java/regalowl/hyperconomy/display/InfoSign.java +++ b/src/main/java/regalowl/hyperconomy/display/InfoSign.java @@ -336,6 +336,7 @@ private void updateHistorySign(int timevalueHours, int timevalue, String inc) { this.timeValue = timevalue; this.increment = inc; new Thread(new Runnable() { + @Override public void run() { String percentchange = hc.getHistory().getPercentChange(to, timeValueHours); String colorcode = getcolorCode(percentchange); @@ -345,6 +346,7 @@ public void run() { line3 = line3.substring(0, 13) + ")"; } hc.getMC().runTask(new Runnable() { + @Override public void run() { HSign s = getSign(); if (s != null) { diff --git a/src/main/java/regalowl/hyperconomy/display/InfoSignHandler.java b/src/main/java/regalowl/hyperconomy/display/InfoSignHandler.java index ef1cdcfe..e06e313a 100644 --- a/src/main/java/regalowl/hyperconomy/display/InfoSignHandler.java +++ b/src/main/java/regalowl/hyperconomy/display/InfoSignHandler.java @@ -47,10 +47,12 @@ private void loadSigns() { signCounter.set(0); infoSigns.clear(); new Thread(new Runnable() { + @Override public void run() { SQLRead sr = hc.getSQLRead(); dbData = sr.select("SELECT * FROM hyperconomy_info_signs"); hc.getMC().runTask(new Runnable() { + @Override public void run() { while (dbData.next()) { HLocation l = new HLocation(dbData.getString("WORLD"), dbData.getInt("X"),dbData.getInt("Y"),dbData.getInt("Z")); @@ -145,6 +147,7 @@ private class SignUpdater { SignUpdater() { currentSign = 0; updateTaskId = hc.getMC().runRepeatingTask(new Runnable() { + @Override public void run() { if (currentSign >= infoSigns.size()) { if (repeatUpdate.get()) { diff --git a/src/main/java/regalowl/hyperconomy/display/ItemDisplayHandler.java b/src/main/java/regalowl/hyperconomy/display/ItemDisplayHandler.java index 55f5c564..8a8e60f3 100644 --- a/src/main/java/regalowl/hyperconomy/display/ItemDisplayHandler.java +++ b/src/main/java/regalowl/hyperconomy/display/ItemDisplayHandler.java @@ -54,10 +54,12 @@ public void loadDisplays() { try { unloadDisplays(); new Thread(new Runnable() { + @Override public void run() { SQLRead sr = hc.getSQLRead(); dbData = sr.select("SELECT * FROM hyperconomy_item_displays"); hc.getMC().runTask(new Runnable() { + @Override public void run() { while (dbData.next()) { String w = dbData.getString("WORLD"); @@ -99,6 +101,7 @@ public void unloadDisplays() { public void startRefreshThread() { refreshthreadid = hc.getMC().runRepeatingTask(new Runnable() { + @Override public void run() { for (ItemDisplay display:displays) { display.refresh(); From 6248e181f44ca8b4ac2a2b517f8b6e8585c99cfd Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 12:46:14 +0200 Subject: [PATCH 29/49] Hopefully final batch of Missing Overrides --- .../hyperconomy/event/HyperEventHandler.java | 2 + .../hyperconomy/gui/CategoryEditor.java | 13 +++--- .../hyperconomy/gui/CompositeDataEditor.java | 7 +-- .../regalowl/hyperconomy/gui/DataEditor.java | 7 +-- .../regalowl/hyperconomy/gui/MainPanel.java | 7 +++ .../regalowl/hyperconomy/gui/ObjectPanel.java | 8 ++++ .../hyperconomy/gui/RemoteGUIServer.java | 2 + .../inventory/HLeatherArmorMeta.java | 1 + .../hyperconomy/inventory/HMapMeta.java | 1 + .../hyperconomy/inventory/HPotionMeta.java | 1 + .../regalowl/hyperconomy/minecraft/HSign.java | 1 + .../hyperconomy/multiserver/MultiServer.java | 1 + .../hyperconomy/shop/ChestShopHandler.java | 1 + .../hyperconomy/shop/HyperShopManager.java | 4 +- .../regalowl/hyperconomy/shop/PlayerShop.java | 42 ++++++++++++++++++ .../regalowl/hyperconomy/shop/ServerShop.java | 43 +++++++++++++++++++ .../java/regalowl/hyperconomy/shop/Shop.java | 1 + .../timeeffects/TimeEffectsManager.java | 1 + .../hyperconomy/tradeobject/TradeObject.java | 1 + .../regalowl/hyperconomy/util/History.java | 2 + .../hyperconomy/util/LibraryManager.java | 1 + .../hyperconomy/util/UpdateChecker.java | 3 ++ .../hyperconomy/webpage/HyperWebAPI.java | 3 +- .../hyperconomy/webpage/MainPage.java | 1 + .../hyperconomy/webpage/ShopPage.java | 2 + .../hyperconomy/webpage/WebHandler.java | 2 + 26 files changed, 144 insertions(+), 14 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/event/HyperEventHandler.java b/src/main/java/regalowl/hyperconomy/event/HyperEventHandler.java index 05e8f5e4..f4bb1452 100755 --- a/src/main/java/regalowl/hyperconomy/event/HyperEventHandler.java +++ b/src/main/java/regalowl/hyperconomy/event/HyperEventHandler.java @@ -39,6 +39,8 @@ private class EventFire implements Runnable { public EventFire(HyperEvent event) { this.event = event; } + + @Override public void run() { fireEvent(event); } diff --git a/src/main/java/regalowl/hyperconomy/gui/CategoryEditor.java b/src/main/java/regalowl/hyperconomy/gui/CategoryEditor.java index bfe488e5..e2bc5751 100644 --- a/src/main/java/regalowl/hyperconomy/gui/CategoryEditor.java +++ b/src/main/java/regalowl/hyperconomy/gui/CategoryEditor.java @@ -6,21 +6,20 @@ import java.util.ArrayList; import java.util.Collections; +import javax.swing.JButton; import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JList; import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTextField; import javax.swing.ListSelectionModel; import javax.swing.SwingUtilities; import javax.swing.border.EmptyBorder; import javax.swing.event.MouseInputAdapter; -import javax.swing.JList; -import javax.swing.JScrollPane; import regalowl.hyperconomy.tradeobject.TradeObject; -import javax.swing.JLabel; -import javax.swing.JButton; -import javax.swing.JTextField; - public class CategoryEditor extends JFrame { @@ -79,6 +78,7 @@ public CategoryEditor(TradeObject to, ObjectPanel ePanel) { addNewCategoryButton.setBounds(164, 489, 244, 25); contentPane.add(addNewCategoryButton); addNewCategoryButton.addActionListener(new ActionListener() { + @Override public void actionPerformed(ActionEvent event) { String text = newCategoryField.getText(); if (text == null || text == "") return; @@ -98,6 +98,7 @@ public void actionPerformed(ActionEvent event) { JButton btnClose = new JButton("Close"); btnClose.addActionListener(new ActionListener() { + @Override public void actionPerformed(ActionEvent e) { dispose(); } diff --git a/src/main/java/regalowl/hyperconomy/gui/CompositeDataEditor.java b/src/main/java/regalowl/hyperconomy/gui/CompositeDataEditor.java index b5463bf4..37615553 100644 --- a/src/main/java/regalowl/hyperconomy/gui/CompositeDataEditor.java +++ b/src/main/java/regalowl/hyperconomy/gui/CompositeDataEditor.java @@ -3,12 +3,12 @@ import java.awt.event.ActionEvent; import java.awt.event.ActionListener; +import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; -import javax.swing.border.EmptyBorder; -import javax.swing.JTextArea; import javax.swing.JScrollPane; -import javax.swing.JButton; +import javax.swing.JTextArea; +import javax.swing.border.EmptyBorder; import regalowl.hyperconomy.tradeobject.TradeObject; @@ -51,6 +51,7 @@ public CompositeDataEditor(TradeObject to) { saveButton.setBounds(185, 475, 117, 25); contentPane.add(saveButton); saveButton.addActionListener(new ActionListener() { + @Override public void actionPerformed(ActionEvent event) { tradeObject.setCompositeData(dataTextArea.getText()); dataEditor.dispose(); diff --git a/src/main/java/regalowl/hyperconomy/gui/DataEditor.java b/src/main/java/regalowl/hyperconomy/gui/DataEditor.java index 9fe0f8d3..d58d4466 100644 --- a/src/main/java/regalowl/hyperconomy/gui/DataEditor.java +++ b/src/main/java/regalowl/hyperconomy/gui/DataEditor.java @@ -3,12 +3,12 @@ import java.awt.event.ActionEvent; import java.awt.event.ActionListener; +import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; -import javax.swing.border.EmptyBorder; -import javax.swing.JTextArea; import javax.swing.JScrollPane; -import javax.swing.JButton; +import javax.swing.JTextArea; +import javax.swing.border.EmptyBorder; import regalowl.hyperconomy.tradeobject.TradeObject; @@ -51,6 +51,7 @@ public DataEditor(TradeObject to) { saveButton.setBounds(185, 475, 117, 25); contentPane.add(saveButton); saveButton.addActionListener(new ActionListener() { + @Override public void actionPerformed(ActionEvent event) { tradeObject.setData(dataTextArea.getText()); dataEditor.dispose(); diff --git a/src/main/java/regalowl/hyperconomy/gui/MainPanel.java b/src/main/java/regalowl/hyperconomy/gui/MainPanel.java index 4fc52692..342eae24 100644 --- a/src/main/java/regalowl/hyperconomy/gui/MainPanel.java +++ b/src/main/java/regalowl/hyperconomy/gui/MainPanel.java @@ -83,6 +83,7 @@ public class MainPanel implements SDLEventListener, HyperEventListener { */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { + @Override public void run() { try { new MainPanel(); @@ -232,6 +233,7 @@ public void windowClosing(java.awt.event.WindowEvent windowEvent) { gbc_btnCloneSelected.gridy = 3; panel.add(btnCloneSelected, gbc_btnCloneSelected); btnCloneSelected.addActionListener(new ActionListener() { + @Override public void actionPerformed(ActionEvent e) { String newName = addEconomyNameField.getText(); if (newName == null || newName.equals("")) return; @@ -246,6 +248,7 @@ public void actionPerformed(ActionEvent e) { JButton btnUpdateEconomy = new JButton("Update Economy"); btnUpdateEconomy.setToolTipText("Changes will be applied to all objects in the economy."); btnUpdateEconomy.addActionListener(new ActionListener() { + @Override public void actionPerformed(ActionEvent event) { String type = newValueType.getSelectedItem().toString(); HyperEconomy he = getSelectedEconomy(); @@ -363,6 +366,7 @@ public void actionPerformed(ActionEvent event) { stockToMedianButton = new JButton("Set Stock to Median"); stockToMedianButton.addActionListener(new ActionListener() { + @Override public void actionPerformed(ActionEvent e) { if (JOptionPane.showConfirmDialog(frmEconomyEditor, "Are you sure you want to set stocks to their median value for this economy?", "Set Stock To Median", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE) == JOptionPane.YES_OPTION) { @@ -502,6 +506,7 @@ public void actionPerformed(ActionEvent e) { economySelectList.setToolTipText("Select an economy."); scrollPane.setViewportView(economySelectList); btnDeleteEconomy.addActionListener(new ActionListener() { + @Override public void actionPerformed(ActionEvent e) { HyperEconomy he = getSelectedEconomy(); if (he == null) return; @@ -516,6 +521,7 @@ public void actionPerformed(ActionEvent e) { } }); btnEditEconomy.addActionListener(new ActionListener() { + @Override public void actionPerformed(ActionEvent e) { HyperEconomy he = getSelectedEconomy(); if (he == null) return; @@ -524,6 +530,7 @@ public void actionPerformed(ActionEvent e) { } }); addEconomyButton.addActionListener(new ActionListener() { + @Override public void actionPerformed(ActionEvent e) { String newName = addEconomyNameField.getText(); if (newName == null || newName.equals("")) return; diff --git a/src/main/java/regalowl/hyperconomy/gui/ObjectPanel.java b/src/main/java/regalowl/hyperconomy/gui/ObjectPanel.java index a7286a5d..189bd153 100644 --- a/src/main/java/regalowl/hyperconomy/gui/ObjectPanel.java +++ b/src/main/java/regalowl/hyperconomy/gui/ObjectPanel.java @@ -110,6 +110,7 @@ private void initialize() { categoryComboBox = new JComboBox(); categoryComboBox.addActionListener(new ActionListener() { + @Override public void actionPerformed(ActionEvent e) { if (!loadingCategories) loadObjects(); } @@ -128,6 +129,7 @@ public void actionPerformed(ActionEvent e) { objectListScrollPane.setViewportView(listObjectSelector); listObjectSelector.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); listObjectSelector.addListSelectionListener(new ListSelectionListener() { + @Override public void valueChanged(ListSelectionEvent event) { TradeObject to = getSelectedObject(); if (to == null) return; @@ -375,6 +377,7 @@ public void valueChanged(ListSelectionEvent event) { editCategoriesButton = new JButton("Edit Categories"); editCategoriesButton.addActionListener(new ActionListener() { + @Override public void actionPerformed(ActionEvent e) { TradeObject to = getSelectedObject(); if (to == null) return; @@ -435,6 +438,7 @@ public void actionPerformed(ActionEvent e) { gbc_editCompositesButton.gridy = 15; settingsPanel.add(editCompositesButton, gbc_editCompositesButton); editCompositesButton.addActionListener(new ActionListener() { + @Override public void actionPerformed(ActionEvent event) { TradeObject to = getSelectedObject(); if (to == null) return; @@ -450,6 +454,7 @@ public void actionPerformed(ActionEvent event) { gbc_btnEditObjectData.gridy = 16; settingsPanel.add(btnEditObjectData, gbc_btnEditObjectData); btnEditObjectData.addActionListener(new ActionListener() { + @Override public void actionPerformed(ActionEvent event) { TradeObject to = getSelectedObject(); if (to == null) return; @@ -519,6 +524,7 @@ public void actionPerformed(ActionEvent event) { pricePanel.add(saveButton, gbc_saveButton); saveButton.setBackground(new Color(0, 51, 0)); saveButton.addActionListener(new ActionListener() { + @Override public void actionPerformed(ActionEvent event) { if (fieldsUpdating) return; TradeObject to = getSelectedObject(); @@ -616,6 +622,7 @@ public void actionPerformed(ActionEvent event) { gbc_addObjectButton.gridy = 0; addNewPanel.add(addObjectButton, gbc_addObjectButton); addObjectButton.addActionListener(new ActionListener() { + @Override public void actionPerformed(ActionEvent e) { String newName = newItemNameField.getText(); String aliases = newName.replace("_", ""); @@ -641,6 +648,7 @@ public void actionPerformed(ActionEvent e) { addNewPanel.add(newItemNameField, gbc_newItemNameField); newItemNameField.setColumns(10); deleteButton.addActionListener(new ActionListener() { + @Override public void actionPerformed(ActionEvent event) { if (fieldsUpdating) return; TradeObject to = getSelectedObject(); diff --git a/src/main/java/regalowl/hyperconomy/gui/RemoteGUIServer.java b/src/main/java/regalowl/hyperconomy/gui/RemoteGUIServer.java index b2da826d..e899c76c 100644 --- a/src/main/java/regalowl/hyperconomy/gui/RemoteGUIServer.java +++ b/src/main/java/regalowl/hyperconomy/gui/RemoteGUIServer.java @@ -81,6 +81,7 @@ public void handleHyperEvent(HyperEvent event) { new Thread(new Runnable() { + @Override public void run() { try { Socket socket = new Socket(); @@ -413,6 +414,7 @@ public void disable() { private void startServer() { hc.getDebugMode().debugWriteMessage("GUI Server started on port: " + listenPort); new Thread(new Runnable() { + @Override public void run() { while (runServer) { GUITransferObject incomingTransfer = null; diff --git a/src/main/java/regalowl/hyperconomy/inventory/HLeatherArmorMeta.java b/src/main/java/regalowl/hyperconomy/inventory/HLeatherArmorMeta.java index 5a8d3c68..4dee4b3b 100644 --- a/src/main/java/regalowl/hyperconomy/inventory/HLeatherArmorMeta.java +++ b/src/main/java/regalowl/hyperconomy/inventory/HLeatherArmorMeta.java @@ -29,6 +29,7 @@ public HLeatherArmorMeta(HLeatherArmorMeta meta) { this.color = new HColor(meta.color); } + @Override public String serialize() { HashMap data = super.getMap(); data.put("color", color.serialize()); diff --git a/src/main/java/regalowl/hyperconomy/inventory/HMapMeta.java b/src/main/java/regalowl/hyperconomy/inventory/HMapMeta.java index ba98230e..74618d35 100644 --- a/src/main/java/regalowl/hyperconomy/inventory/HMapMeta.java +++ b/src/main/java/regalowl/hyperconomy/inventory/HMapMeta.java @@ -28,6 +28,7 @@ public HMapMeta(HMapMeta meta) { isScaling = meta.isScaling; } + @Override public String serialize() { HashMap data = super.getMap(); data.put("isScaling", isScaling+""); diff --git a/src/main/java/regalowl/hyperconomy/inventory/HPotionMeta.java b/src/main/java/regalowl/hyperconomy/inventory/HPotionMeta.java index 1328e850..c1201309 100644 --- a/src/main/java/regalowl/hyperconomy/inventory/HPotionMeta.java +++ b/src/main/java/regalowl/hyperconomy/inventory/HPotionMeta.java @@ -37,6 +37,7 @@ public HPotionMeta(HPotionMeta meta) { this.potionData = new HPotionData(meta.potionData); } + @Override public String serialize() { HashMap data = super.getMap(); ArrayList sEffects = new ArrayList(); diff --git a/src/main/java/regalowl/hyperconomy/minecraft/HSign.java b/src/main/java/regalowl/hyperconomy/minecraft/HSign.java index d1334b72..603f2c67 100644 --- a/src/main/java/regalowl/hyperconomy/minecraft/HSign.java +++ b/src/main/java/regalowl/hyperconomy/minecraft/HSign.java @@ -75,6 +75,7 @@ private class SignUpdater { public SignUpdater(HSign sign) { this.s = sign; hc.getMC().runTask(new Runnable() { + @Override public void run() { hc.getMC().setSign(s); } diff --git a/src/main/java/regalowl/hyperconomy/multiserver/MultiServer.java b/src/main/java/regalowl/hyperconomy/multiserver/MultiServer.java index 8a87c5c3..b2d432d3 100644 --- a/src/main/java/regalowl/hyperconomy/multiserver/MultiServer.java +++ b/src/main/java/regalowl/hyperconomy/multiserver/MultiServer.java @@ -88,6 +88,7 @@ public void disable() { private void receiveUpdate() { new Thread(new Runnable() { + @Override public void run() { while (runServer) { MultiServerTransferObject transferObject = null; diff --git a/src/main/java/regalowl/hyperconomy/shop/ChestShopHandler.java b/src/main/java/regalowl/hyperconomy/shop/ChestShopHandler.java index 1370625f..515c3ab4 100644 --- a/src/main/java/regalowl/hyperconomy/shop/ChestShopHandler.java +++ b/src/main/java/regalowl/hyperconomy/shop/ChestShopHandler.java @@ -68,6 +68,7 @@ private void loadChestShops() { try { chestShops.clear(); new Thread(new Runnable() { + @Override public void run() { SQLRead sr = hc.getSQLRead(); QueryResult dbData = sr.select("SELECT * FROM hyperconomy_chest_shops"); diff --git a/src/main/java/regalowl/hyperconomy/shop/HyperShopManager.java b/src/main/java/regalowl/hyperconomy/shop/HyperShopManager.java index 50e4150e..f82a74e8 100644 --- a/src/main/java/regalowl/hyperconomy/shop/HyperShopManager.java +++ b/src/main/java/regalowl/hyperconomy/shop/HyperShopManager.java @@ -39,6 +39,7 @@ public void handleHyperEvent(HyperEvent event) { DataLoadEvent devent = (DataLoadEvent) event; if (!(devent.loadType == DataLoadType.DEFAULT_ACCOUNT)) return; new Thread(new Runnable() { + @Override public void run() { loadData(); } @@ -139,7 +140,8 @@ public void renameShop(String name, String newName) { } public void startShopCheck() { shopCheckTaskId = hc.getMC().runRepeatingTask(new Runnable() { - public void run() { + @Override + public void run() { for (Shop shop:shops.values()) { shop.updatePlayerStatus(); } diff --git a/src/main/java/regalowl/hyperconomy/shop/PlayerShop.java b/src/main/java/regalowl/hyperconomy/shop/PlayerShop.java index fcf9b910..14e1190c 100755 --- a/src/main/java/regalowl/hyperconomy/shop/PlayerShop.java +++ b/src/main/java/regalowl/hyperconomy/shop/PlayerShop.java @@ -164,10 +164,12 @@ private void loadPlayerShopObjects() { } + @Override public int compareTo(Shop s) { return name.compareTo(s.getName()); } + @Override public void setPoint1(String world, int x, int y, int z) { this.world = world; p1x = x; @@ -183,6 +185,7 @@ public void setPoint1(String world, int x, int y, int z) { hc.getSQLWrite().performUpdate("hyperconomy_shops", values, conditions); hc.getHyperEventHandler().fireEvent(new ShopModificationEvent(this)); } + @Override public void setPoint2(String world, int x, int y, int z) { this.world = world; p2x = x; @@ -198,14 +201,17 @@ public void setPoint2(String world, int x, int y, int z) { hc.getSQLWrite().performUpdate("hyperconomy_shops", values, conditions); hc.getHyperEventHandler().fireEvent(new ShopModificationEvent(this)); } + @Override public void setPoint1(HLocation l) { setPoint1(l.getWorld(), l.getBlockX(), l.getBlockY(), l.getBlockZ()); } + @Override public void setPoint2(HLocation l) { setPoint2(l.getWorld(), l.getBlockX(), l.getBlockY(), l.getBlockZ()); } + @Override public void setMessage(String message) { this.message = message; HashMap conditions = new HashMap(); @@ -216,11 +222,13 @@ public void setMessage(String message) { hc.getHyperEventHandler().fireEvent(new ShopModificationEvent(this)); } + @Override public void setDefaultMessage() { LanguageFile L = hc.getLanguageFile(); setMessage(L.get("SHOP_LINE_BREAK")+"%n&aWelcome to "+name+"%n&9Type &b/hc &9for help.%n"+L.get("SHOP_LINE_BREAK")); } + @Override public void setWorld(String world) { this.world = world; HashMap conditions = new HashMap(); @@ -231,6 +239,7 @@ public void setWorld(String world) { hc.getHyperEventHandler().fireEvent(new ShopModificationEvent(this)); } + @Override public void setName(String name) { HashMap conditions = new HashMap(); HashMap values = new HashMap(); @@ -241,6 +250,7 @@ public void setName(String name) { hc.getHyperEventHandler().fireEvent(new ShopModificationEvent(this)); } + @Override public void setEconomy(String economy) { this.economy = economy; HashMap conditions = new HashMap(); @@ -297,6 +307,7 @@ public boolean inShop(HyperPlayer hp) { return inShop(hp.getLocation()); } + @Override public void sendEntryMessage(HyperPlayer player) { if (message == "") {setDefaultMessage();} if (message.equalsIgnoreCase("none")) {return;} @@ -306,20 +317,24 @@ public void sendEntryMessage(HyperPlayer player) { } } + @Override public String getEconomy() { return economy; } + @Override public String getName() { return name; } + @Override public String getDisplayName() { return name.replace("_", " "); } + @Override public void saveAvailable() { HyperEconomy he = getHyperEconomy(); ArrayList unavailable = new ArrayList(); @@ -337,6 +352,7 @@ public void saveAvailable() { hc.getHyperEventHandler().fireEvent(new ShopModificationEvent(this)); } + @Override public boolean isStocked(TradeObject ho) { TradeObject pso = ho; if (!ho.isShopObject()) { @@ -346,15 +362,18 @@ public boolean isStocked(TradeObject ho) { if (pso.getStock() <= 0.0) {return false;} return true; } + @Override public boolean isStocked(String item) { return isStocked(getHyperEconomy().getTradeObject(item)); } + @Override public boolean isBanned(String to) { if (availableObjects.contains(to)) { return false; } return true; } + @Override public boolean isTradeable(TradeObject ho) { if (!isBanned(ho.getName())) { if (ho.isShopObject()) { @@ -366,6 +385,7 @@ public boolean isTradeable(TradeObject ho) { } return false; } + @Override public boolean isAvailable(TradeObject ho) { if (isTradeable(ho) && isStocked(ho)) { return true; @@ -374,6 +394,7 @@ public boolean isAvailable(TradeObject ho) { } + @Override public ArrayList getTradeableObjects() { ArrayList available = new ArrayList(); for (TradeObject pso:shopContents.values()) { @@ -392,6 +413,7 @@ public ArrayList getShopObjects() { return objects; } + @Override public void unBanAllObjects() { availableObjects.clear(); for (TradeObject ho:getHyperEconomy().getTradeObjects()) { @@ -399,10 +421,12 @@ public void unBanAllObjects() { } saveAvailable(); } + @Override public void banAllObjects() { availableObjects.clear(); saveAvailable(); } + @Override public void unBanObjects(ArrayList objects) { for (TradeObject ho:objects) { TradeObject add = null; @@ -417,6 +441,7 @@ public void unBanObjects(ArrayList objects) { } saveAvailable(); } + @Override public void banObjects(ArrayList objects) { for (TradeObject ho:objects) { TradeObject remove = null; @@ -434,34 +459,42 @@ public void banObjects(ArrayList objects) { + @Override public int getP1x() { return p1x; } + @Override public int getP1y() { return p1y; } + @Override public int getP1z() { return p1z; } + @Override public int getP2x() { return p2x; } + @Override public int getP2y() { return p2y; } + @Override public int getP2z() { return p2z; } + @Override public HLocation getLocation1() { return new HLocation(world, p1x, p1y, p1z); } + @Override public HLocation getLocation2() { return new HLocation(world, p2x, p2y, p2z); } @@ -470,6 +503,7 @@ public boolean getUseEconomyStock() { return useEconomyStock; } + @Override public HyperAccount getOwner() { if (ownerIsBank) { return hc.getHyperBankManager().getHyperBank(owner); @@ -478,6 +512,7 @@ public HyperAccount getOwner() { } } + @Override public void setOwner(HyperAccount owner) { this.owner = owner.getName(); if (owner instanceof HyperBank) ownerIsBank = true; @@ -504,6 +539,7 @@ public boolean isEmpty() { return true; } + @Override public void deleteShop() { HashMap conditions = new HashMap(); conditions.put("NAME", name); @@ -563,6 +599,7 @@ public boolean hasPlayerShopObject(TradeObject ho) { } + @Override public HyperEconomy getHyperEconomy() { HyperEconomy he = hc.getDataManager().getEconomy(economy); if (he == null) { @@ -574,6 +611,7 @@ public HyperEconomy getHyperEconomy() { + @Override public void updatePlayerStatus() { LanguageFile L = hc.getLanguageFile(); for (HyperPlayer p : hc.getHyperPlayerManager().getOnlinePlayers()) { @@ -596,6 +634,7 @@ public void updatePlayerStatus() { + @Override public int getVolume() { return Math.abs(p1x - p2x) * Math.abs(p1y - p2y) * Math.abs(p1z - p2z); } @@ -641,6 +680,7 @@ public void saveAllowed() { } + @Override public ArrayList getShopBlockLocations() { ArrayList shopBlockLocations = new ArrayList(); ArrayList xvals = new ArrayList(); @@ -683,6 +723,7 @@ public ArrayList getShopBlockLocations() { return shopBlockLocations; } + @Override public boolean intersectsShop(Shop s, int volumeLimit) { if (s.getVolume() > volumeLimit) {return false;} for (HLocation l:s.getShopBlockLocations()) { @@ -693,6 +734,7 @@ public boolean intersectsShop(Shop s, int volumeLimit) { return false; } + @Override public boolean deleted() { return deleted; } diff --git a/src/main/java/regalowl/hyperconomy/shop/ServerShop.java b/src/main/java/regalowl/hyperconomy/shop/ServerShop.java index 1d5b9160..3b01f236 100755 --- a/src/main/java/regalowl/hyperconomy/shop/ServerShop.java +++ b/src/main/java/regalowl/hyperconomy/shop/ServerShop.java @@ -115,10 +115,12 @@ public void setHyperConomy(HyperConomy hc) { this.hc = hc; } + @Override public int compareTo(Shop s) { return name.compareTo(s.getName()); } + @Override public void setPoint1(String world, int x, int y, int z) { this.world = world; p1x = x; @@ -134,6 +136,7 @@ public void setPoint1(String world, int x, int y, int z) { hc.getSQLWrite().performUpdate("hyperconomy_shops", values, conditions); hc.getHyperEventHandler().fireEvent(new ShopModificationEvent(this)); } + @Override public void setPoint2(String world, int x, int y, int z) { this.world = world; p2x = x; @@ -152,12 +155,15 @@ public void setPoint2(String world, int x, int y, int z) { + @Override public void setPoint1(HLocation l) { setPoint1(l.getWorld(), l.getBlockX(), l.getBlockY(), l.getBlockZ()); } + @Override public void setPoint2(HLocation l) { setPoint2(l.getWorld(), l.getBlockX(), l.getBlockY(), l.getBlockZ()); } + @Override public void setMessage(String message) { this.message = message; HashMap conditions = new HashMap(); @@ -168,11 +174,13 @@ public void setMessage(String message) { hc.getHyperEventHandler().fireEvent(new ShopModificationEvent(this)); } + @Override public void setDefaultMessage() { LanguageFile L = hc.getLanguageFile(); setMessage(L.get("SHOP_LINE_BREAK")+"%n&aWelcome to "+name+"%n&9Type &b/hc &9for help.%n"+L.get("SHOP_LINE_BREAK")); } + @Override public void setWorld(String world) { this.world = world; HashMap conditions = new HashMap(); @@ -183,6 +191,7 @@ public void setWorld(String world) { hc.getHyperEventHandler().fireEvent(new ShopModificationEvent(this)); } + @Override public void setName(String name) { HashMap conditions = new HashMap(); HashMap values = new HashMap(); @@ -192,6 +201,7 @@ public void setName(String name) { this.name = name; hc.getHyperEventHandler().fireEvent(new ShopModificationEvent(this)); } + @Override public void setEconomy(String economy) { this.economy = economy; HashMap conditions = new HashMap(); @@ -202,6 +212,7 @@ public void setEconomy(String economy) { hc.getHyperEventHandler().fireEvent(new ShopModificationEvent(this)); } + @Override public boolean inShop(int x, int y, int z, String world) { if (world == null) return false; if (world.equalsIgnoreCase(this.world)) { @@ -231,6 +242,7 @@ public boolean inShop(HyperPlayer hp) { } + @Override public void sendEntryMessage(HyperPlayer player) { if (message == "") {setDefaultMessage();} if (message.equalsIgnoreCase("none")) {return;} @@ -240,10 +252,12 @@ public void sendEntryMessage(HyperPlayer player) { } } + @Override public String getEconomy() { return economy; } + @Override public HyperEconomy getHyperEconomy() { HyperEconomy he = hc.getDataManager().getEconomy(economy); if (he == null) { @@ -253,15 +267,18 @@ public HyperEconomy getHyperEconomy() { return he; } + @Override public String getName() { return name; } + @Override public String getDisplayName() { return name.replace("_", " "); } + @Override public void saveAvailable() { HyperEconomy he = getHyperEconomy(); ArrayList unavailable = new ArrayList(); @@ -278,6 +295,7 @@ public void saveAvailable() { hc.getSQLWrite().performUpdate("hyperconomy_shops", values, conditions); } + @Override public boolean isStocked(TradeObject ho) { if (ho != null && ho.getStock() > 0) { return true; @@ -290,24 +308,29 @@ public boolean isBanned(TradeObject ho) { } return true; } + @Override public boolean isBanned(String name) { return isBanned(getHyperEconomy().getTradeObject(name)); } + @Override public boolean isTradeable(TradeObject ho) { if (!isBanned(ho)) { return true; } return false; } + @Override public boolean isStocked(String item) { return isStocked(getHyperEconomy().getTradeObject(item)); } + @Override public boolean isAvailable(TradeObject ho) { if (isTradeable(ho) && isStocked(ho)) { return true; } return false; } + @Override public ArrayList getTradeableObjects() { HyperEconomy he = getHyperEconomy(); ArrayList available = new ArrayList(); @@ -318,6 +341,7 @@ public ArrayList getTradeableObjects() { return available; } + @Override public void unBanAllObjects() { availableObjects.clear(); for (TradeObject ho:getHyperEconomy().getTradeObjects()) { @@ -325,10 +349,12 @@ public void unBanAllObjects() { } saveAvailable(); } + @Override public void banAllObjects() { availableObjects.clear(); saveAvailable(); } + @Override public void unBanObjects(ArrayList objects) { for (TradeObject ho:objects) { if (!availableObjects.contains(ho)) { @@ -337,6 +363,7 @@ public void unBanObjects(ArrayList objects) { } saveAvailable(); } + @Override public void banObjects(ArrayList objects) { for (TradeObject ho:objects) { if (availableObjects.contains(ho.getName())) { @@ -347,38 +374,47 @@ public void banObjects(ArrayList objects) { } + @Override public int getP1x() { return p1x; } + @Override public int getP1y() { return p1y; } + @Override public int getP1z() { return p1z; } + @Override public int getP2x() { return p2x; } + @Override public int getP2y() { return p2y; } + @Override public int getP2z() { return p2z; } + @Override public HLocation getLocation1() { return new HLocation(world, p1x, p1y, p1z); } + @Override public HLocation getLocation2() { return new HLocation(world, p2x, p2y, p2z); } + @Override public HyperAccount getOwner() { if (ownerIsBank) { return hc.getHyperBankManager().getHyperBank(owner); @@ -386,6 +422,7 @@ public HyperAccount getOwner() { return hc.getHyperPlayerManager().getHyperPlayer(owner); } } + @Override public void updatePlayerStatus() { LanguageFile L = hc.getLanguageFile(); for (HyperPlayer p : hc.getHyperPlayerManager().getOnlinePlayers()) { @@ -406,10 +443,12 @@ public void updatePlayerStatus() { } } + @Override public int getVolume() { return Math.abs(p1x - p2x) * Math.abs(p1y - p2y) * Math.abs(p1z - p2z); } + @Override public void deleteShop() { HashMap conditions = new HashMap(); conditions.put("NAME", name); @@ -419,6 +458,7 @@ public void deleteShop() { hc.getHyperEventHandler().fireEvent(new ShopModificationEvent(this)); } + @Override public void setOwner(HyperAccount owner) { this.owner = owner.getName(); if (owner instanceof HyperBank) ownerIsBank = true; @@ -433,6 +473,7 @@ public void setOwner(HyperAccount owner) { hc.getSQLWrite().performUpdate("hyperconomy_shops", values, conditions); } + @Override public ArrayList getShopBlockLocations() { ArrayList shopBlockLocations = new ArrayList(); ArrayList xvals = new ArrayList(); @@ -475,6 +516,7 @@ public ArrayList getShopBlockLocations() { return shopBlockLocations; } + @Override public boolean intersectsShop(Shop s, int volumeLimit) { if (s.getVolume() > volumeLimit) {return false;} for (HLocation l:s.getShopBlockLocations()) { @@ -485,6 +527,7 @@ public boolean intersectsShop(Shop s, int volumeLimit) { return false; } + @Override public boolean deleted() { return deleted; } diff --git a/src/main/java/regalowl/hyperconomy/shop/Shop.java b/src/main/java/regalowl/hyperconomy/shop/Shop.java index 25e89f9f..ae5cec59 100644 --- a/src/main/java/regalowl/hyperconomy/shop/Shop.java +++ b/src/main/java/regalowl/hyperconomy/shop/Shop.java @@ -16,6 +16,7 @@ public interface Shop extends Comparable, Serializable{ + @Override public int compareTo(Shop s); public void setHyperConomy(HyperConomy hc); public void setPoint1(String world, int x, int y, int z); diff --git a/src/main/java/regalowl/hyperconomy/timeeffects/TimeEffectsManager.java b/src/main/java/regalowl/hyperconomy/timeeffects/TimeEffectsManager.java index 2359933e..db5e49f9 100644 --- a/src/main/java/regalowl/hyperconomy/timeeffects/TimeEffectsManager.java +++ b/src/main/java/regalowl/hyperconomy/timeeffects/TimeEffectsManager.java @@ -41,6 +41,7 @@ public void disable() { private void startTimer() { timerTaskId = hc.getMC().runRepeatingTask(new Runnable() { + @Override public void run() { for (TimeEffect te:timeEffects) { te.subtractTime(10); diff --git a/src/main/java/regalowl/hyperconomy/tradeobject/TradeObject.java b/src/main/java/regalowl/hyperconomy/tradeobject/TradeObject.java index 0a883782..434cf495 100644 --- a/src/main/java/regalowl/hyperconomy/tradeobject/TradeObject.java +++ b/src/main/java/regalowl/hyperconomy/tradeobject/TradeObject.java @@ -25,6 +25,7 @@ public interface TradeObject extends Comparable, Serializable { /* (non-Javadoc) * @see java.lang.Comparable#compareTo(java.lang.Object) */ + @Override public int compareTo(TradeObject ho); @Override diff --git a/src/main/java/regalowl/hyperconomy/util/History.java b/src/main/java/regalowl/hyperconomy/util/History.java index d025f754..30d7fdee 100644 --- a/src/main/java/regalowl/hyperconomy/util/History.java +++ b/src/main/java/regalowl/hyperconomy/util/History.java @@ -90,6 +90,7 @@ public void updateSetting(String setting, String value) { private void startTimer() { historylogtaskid = hc.getMC().runRepeatingTask(new Runnable() { + @Override public void run() { long currentTime = System.currentTimeMillis(); timeCounter += (currentTime - lastTime); @@ -98,6 +99,7 @@ public void run() { timeCounter = 0; writeHistoryValues(); hc.getMC().runTaskLater(new Runnable() { + @Override public void run() { if (isign != null) isign.updateSigns(); } diff --git a/src/main/java/regalowl/hyperconomy/util/LibraryManager.java b/src/main/java/regalowl/hyperconomy/util/LibraryManager.java index 8f78d93c..1f552aaa 100644 --- a/src/main/java/regalowl/hyperconomy/util/LibraryManager.java +++ b/src/main/java/regalowl/hyperconomy/util/LibraryManager.java @@ -52,6 +52,7 @@ public LibraryManager(HyperConomy hc, HyperEventHandler heh) { private class LibraryLoader implements Runnable { + @Override public void run() { FileTools ft = hc.getSimpleDataLib().getFileTools(); libFolder = hc.getSimpleDataLib().getStoragePath() + File.separator + "lib"; diff --git a/src/main/java/regalowl/hyperconomy/util/UpdateChecker.java b/src/main/java/regalowl/hyperconomy/util/UpdateChecker.java index 2cb1276a..b73bb69e 100644 --- a/src/main/java/regalowl/hyperconomy/util/UpdateChecker.java +++ b/src/main/java/regalowl/hyperconomy/util/UpdateChecker.java @@ -42,6 +42,7 @@ public void runCheck() { hc.getMC().logInfo("[HyperConomy]Checking for updates..."); new Thread(new Runnable() { + @Override public void run() { try { URL url = new URL("https://api.curseforge.com/servermods/files?projectids=38059"); @@ -83,6 +84,7 @@ public void run() { upgradeAvailable = true; } hc.getMC().runTask(new Runnable() { + @Override public void run() { if (upgradeAvailable) { if (notifyInGame) notifyAdmins(); @@ -115,6 +117,7 @@ private String getType(String data) { private void notifyAdmins() { hc.getMC().runTaskLater(new Runnable() { + @Override public void run() { MessageBuilder mb = new MessageBuilder(hc, "NEW_VERSION_AVAILABLE"); mb.setValue(latestVersion); diff --git a/src/main/java/regalowl/hyperconomy/webpage/HyperWebAPI.java b/src/main/java/regalowl/hyperconomy/webpage/HyperWebAPI.java index 3522ac87..4e37436b 100755 --- a/src/main/java/regalowl/hyperconomy/webpage/HyperWebAPI.java +++ b/src/main/java/regalowl/hyperconomy/webpage/HyperWebAPI.java @@ -41,7 +41,8 @@ public HyperWebAPI(HyperConomy hc, String apiKey) { } - public void doGet(HttpServletRequest pRequest, HttpServletResponse pResponse) throws IOException, ServletException { + @Override + public void doGet(HttpServletRequest pRequest, HttpServletResponse pResponse) throws IOException, ServletException { pResponse.setContentType("text/html;charset=utf-8"); pResponse.setStatus(HttpServletResponse.SC_OK); String lUri = pRequest.getRequestURI(); diff --git a/src/main/java/regalowl/hyperconomy/webpage/MainPage.java b/src/main/java/regalowl/hyperconomy/webpage/MainPage.java index 94bab26b..2794406f 100755 --- a/src/main/java/regalowl/hyperconomy/webpage/MainPage.java +++ b/src/main/java/regalowl/hyperconomy/webpage/MainPage.java @@ -50,6 +50,7 @@ public void disable() { pageUpdater.cancel(); } + @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=utf-8"); response.setStatus(HttpServletResponse.SC_OK); diff --git a/src/main/java/regalowl/hyperconomy/webpage/ShopPage.java b/src/main/java/regalowl/hyperconomy/webpage/ShopPage.java index 21ffe4d7..0a0a3e5b 100755 --- a/src/main/java/regalowl/hyperconomy/webpage/ShopPage.java +++ b/src/main/java/regalowl/hyperconomy/webpage/ShopPage.java @@ -53,6 +53,7 @@ public ShopPage(Shop shop, HyperConomy_Web hcw) { + @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=utf-8"); response.setStatus(HttpServletResponse.SC_OK); @@ -74,6 +75,7 @@ public void updatePage() { if (!initialLoad && modifiedSinceLastUpdate.size() == 0) return; new Thread(new Runnable() { + @Override public void run() { page = buildPage(s.getEconomy()); } diff --git a/src/main/java/regalowl/hyperconomy/webpage/WebHandler.java b/src/main/java/regalowl/hyperconomy/webpage/WebHandler.java index 99f0474c..88456061 100755 --- a/src/main/java/regalowl/hyperconomy/webpage/WebHandler.java +++ b/src/main/java/regalowl/hyperconomy/webpage/WebHandler.java @@ -44,6 +44,7 @@ public void handleHyperEvent(HyperEvent event) { public void startServer() { try { new Thread(new Runnable() { + @Override public void run() { System.setProperty("org.eclipse.jetty.LEVEL", "WARN"); server = new Server(hcw.getPort()); @@ -78,6 +79,7 @@ public void run() { public void addShop(Shop shop) { s = shop; new Thread(new Runnable() { + @Override public void run() { ShopPage sp = new ShopPage(s, hcw); shopPages.add(sp); From 84f98d4b4544f50f58662c7d335803e93c8e1f6a Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 12:48:25 +0200 Subject: [PATCH 30/49] Removed duplicate super interface --- .../regalowl/hyperconomy/gui/GUIConnector.java | 3 +-- .../serializable/SerializableBookMeta.java | 3 +-- .../serializable/SerializableColor.java | 3 +-- .../serializable/SerializableEnchantment.java | 3 +-- .../SerializableEnchantmentStorageMeta.java | 3 +-- .../serializable/SerializableFireworkEffect.java | 3 +-- .../SerializableFireworkEffectMeta.java | 3 +-- .../serializable/SerializableFireworkMeta.java | 3 +-- .../serializable/SerializableItemMeta.java | 3 +-- .../serializable/SerializableItemStack.java | 3 +-- .../SerializableLeatherArmorMeta.java | 3 +-- .../serializable/SerializableMapMeta.java | 3 +-- .../serializable/SerializablePotionEffect.java | 3 +-- .../serializable/SerializablePotionMeta.java | 3 +-- .../serializable/SerializableSkullMeta.java | 3 +-- .../regalowl/hyperconomy/shop/GlobalShop.java | 4 ++-- .../regalowl/hyperconomy/shop/PlayerShop.java | 16 ++++++++-------- .../regalowl/hyperconomy/shop/ServerShop.java | 4 ++-- .../tradeobject/BasicShopTradeObject.java | 4 ++-- .../tradeobject/ComponentTradeItem.java | 2 +- .../tradeobject/CompositeShopTradeItem.java | 2 +- .../tradeobject/CompositeTradeItem.java | 3 +-- .../tradeobject/ShopTradeEnchant.java | 2 +- .../hyperconomy/tradeobject/TempTradeItem.java | 2 +- .../hyperconomy/tradeobject/TradeEnchant.java | 2 +- .../hyperconomy/tradeobject/TradeXp.java | 2 +- 26 files changed, 36 insertions(+), 52 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/gui/GUIConnector.java b/src/main/java/regalowl/hyperconomy/gui/GUIConnector.java index d267c157..65cddb04 100644 --- a/src/main/java/regalowl/hyperconomy/gui/GUIConnector.java +++ b/src/main/java/regalowl/hyperconomy/gui/GUIConnector.java @@ -2,11 +2,10 @@ -import regalowl.hyperconomy.api.MineCraftConnector; import regalowl.hyperconomy.api.ServerConnectionType; import regalowl.hyperconomy.util.DefaultConnector; -public class GUIConnector extends DefaultConnector implements MineCraftConnector { +public class GUIConnector extends DefaultConnector { diff --git a/src/main/java/regalowl/hyperconomy/serializable/SerializableBookMeta.java b/src/main/java/regalowl/hyperconomy/serializable/SerializableBookMeta.java index 05445502..7defc18a 100644 --- a/src/main/java/regalowl/hyperconomy/serializable/SerializableBookMeta.java +++ b/src/main/java/regalowl/hyperconomy/serializable/SerializableBookMeta.java @@ -2,7 +2,6 @@ import java.io.ByteArrayInputStream; import java.io.ObjectInputStream; -import java.io.Serializable; import java.util.List; import org.bukkit.Material; @@ -14,7 +13,7 @@ -public class SerializableBookMeta extends SerializableItemMeta implements Serializable { +public class SerializableBookMeta extends SerializableItemMeta { private static final long serialVersionUID = -1095975801937823837L; private String author; diff --git a/src/main/java/regalowl/hyperconomy/serializable/SerializableColor.java b/src/main/java/regalowl/hyperconomy/serializable/SerializableColor.java index b83737a0..2bb9d228 100644 --- a/src/main/java/regalowl/hyperconomy/serializable/SerializableColor.java +++ b/src/main/java/regalowl/hyperconomy/serializable/SerializableColor.java @@ -2,14 +2,13 @@ import java.io.ByteArrayInputStream; import java.io.ObjectInputStream; -import java.io.Serializable; import org.bukkit.Color; import org.yaml.snakeyaml.external.biz.base64Coder.Base64Coder; -public class SerializableColor extends SerializableObject implements Serializable { +public class SerializableColor extends SerializableObject { private static final long serialVersionUID = 1194773802989404854L; diff --git a/src/main/java/regalowl/hyperconomy/serializable/SerializableEnchantment.java b/src/main/java/regalowl/hyperconomy/serializable/SerializableEnchantment.java index a23d0841..684bdbbd 100644 --- a/src/main/java/regalowl/hyperconomy/serializable/SerializableEnchantment.java +++ b/src/main/java/regalowl/hyperconomy/serializable/SerializableEnchantment.java @@ -2,7 +2,6 @@ import java.io.ByteArrayInputStream; import java.io.ObjectInputStream; -import java.io.Serializable; import org.bukkit.NamespacedKey; import org.bukkit.enchantments.Enchantment; @@ -11,7 +10,7 @@ -public class SerializableEnchantment extends SerializableObject implements Serializable { +public class SerializableEnchantment extends SerializableObject { private static final long serialVersionUID = -5705303756771850224L; private String enchantment; private int lvl; diff --git a/src/main/java/regalowl/hyperconomy/serializable/SerializableEnchantmentStorageMeta.java b/src/main/java/regalowl/hyperconomy/serializable/SerializableEnchantmentStorageMeta.java index b822ed04..5ab4e7db 100644 --- a/src/main/java/regalowl/hyperconomy/serializable/SerializableEnchantmentStorageMeta.java +++ b/src/main/java/regalowl/hyperconomy/serializable/SerializableEnchantmentStorageMeta.java @@ -2,7 +2,6 @@ import java.io.ByteArrayInputStream; import java.io.ObjectInputStream; -import java.io.Serializable; import java.util.ArrayList; import java.util.Iterator; import java.util.List; @@ -18,7 +17,7 @@ -public class SerializableEnchantmentStorageMeta extends SerializableItemMeta implements Serializable { +public class SerializableEnchantmentStorageMeta extends SerializableItemMeta { private static final long serialVersionUID = -797201926717838339L; diff --git a/src/main/java/regalowl/hyperconomy/serializable/SerializableFireworkEffect.java b/src/main/java/regalowl/hyperconomy/serializable/SerializableFireworkEffect.java index 70e2e951..9298f254 100644 --- a/src/main/java/regalowl/hyperconomy/serializable/SerializableFireworkEffect.java +++ b/src/main/java/regalowl/hyperconomy/serializable/SerializableFireworkEffect.java @@ -2,7 +2,6 @@ import java.io.ByteArrayInputStream; import java.io.ObjectInputStream; -import java.io.Serializable; import java.util.ArrayList; import java.util.List; @@ -13,7 +12,7 @@ -public class SerializableFireworkEffect extends SerializableObject implements Serializable { +public class SerializableFireworkEffect extends SerializableObject { private static final long serialVersionUID = 2644823685312321272L; private List colors = new ArrayList(); diff --git a/src/main/java/regalowl/hyperconomy/serializable/SerializableFireworkEffectMeta.java b/src/main/java/regalowl/hyperconomy/serializable/SerializableFireworkEffectMeta.java index 9a94d6e8..834328c2 100644 --- a/src/main/java/regalowl/hyperconomy/serializable/SerializableFireworkEffectMeta.java +++ b/src/main/java/regalowl/hyperconomy/serializable/SerializableFireworkEffectMeta.java @@ -2,7 +2,6 @@ import java.io.ByteArrayInputStream; import java.io.ObjectInputStream; -import java.io.Serializable; import org.bukkit.Material; import org.bukkit.inventory.ItemStack; @@ -13,7 +12,7 @@ -public class SerializableFireworkEffectMeta extends SerializableItemMeta implements Serializable { +public class SerializableFireworkEffectMeta extends SerializableItemMeta { private static final long serialVersionUID = -6227758269858375863L; private SerializableFireworkEffect effect; diff --git a/src/main/java/regalowl/hyperconomy/serializable/SerializableFireworkMeta.java b/src/main/java/regalowl/hyperconomy/serializable/SerializableFireworkMeta.java index 7e56bf07..a441ce0c 100644 --- a/src/main/java/regalowl/hyperconomy/serializable/SerializableFireworkMeta.java +++ b/src/main/java/regalowl/hyperconomy/serializable/SerializableFireworkMeta.java @@ -2,7 +2,6 @@ import java.io.ByteArrayInputStream; import java.io.ObjectInputStream; -import java.io.Serializable; import java.util.ArrayList; import java.util.List; @@ -16,7 +15,7 @@ -public class SerializableFireworkMeta extends SerializableItemMeta implements Serializable { +public class SerializableFireworkMeta extends SerializableItemMeta { private static final long serialVersionUID = 7131977924010280498L; private List effects = new ArrayList(); diff --git a/src/main/java/regalowl/hyperconomy/serializable/SerializableItemMeta.java b/src/main/java/regalowl/hyperconomy/serializable/SerializableItemMeta.java index 604bbfb3..41618c92 100644 --- a/src/main/java/regalowl/hyperconomy/serializable/SerializableItemMeta.java +++ b/src/main/java/regalowl/hyperconomy/serializable/SerializableItemMeta.java @@ -2,7 +2,6 @@ import java.io.ByteArrayInputStream; import java.io.ObjectInputStream; -import java.io.Serializable; import java.util.ArrayList; import java.util.Iterator; import java.util.List; @@ -18,7 +17,7 @@ -public class SerializableItemMeta extends SerializableObject implements Serializable { +public class SerializableItemMeta extends SerializableObject { private static final long serialVersionUID = 4510326523024526205L; diff --git a/src/main/java/regalowl/hyperconomy/serializable/SerializableItemStack.java b/src/main/java/regalowl/hyperconomy/serializable/SerializableItemStack.java index c9ea1705..e2f946ce 100644 --- a/src/main/java/regalowl/hyperconomy/serializable/SerializableItemStack.java +++ b/src/main/java/regalowl/hyperconomy/serializable/SerializableItemStack.java @@ -2,7 +2,6 @@ import java.io.ByteArrayInputStream; import java.io.ObjectInputStream; -import java.io.Serializable; import org.bukkit.ChatColor; import org.bukkit.Material; @@ -21,7 +20,7 @@ -public class SerializableItemStack extends SerializableObject implements Serializable { +public class SerializableItemStack extends SerializableObject { private static final long serialVersionUID = 8634824379403255552L; private String material; diff --git a/src/main/java/regalowl/hyperconomy/serializable/SerializableLeatherArmorMeta.java b/src/main/java/regalowl/hyperconomy/serializable/SerializableLeatherArmorMeta.java index 2632ad87..011119a4 100644 --- a/src/main/java/regalowl/hyperconomy/serializable/SerializableLeatherArmorMeta.java +++ b/src/main/java/regalowl/hyperconomy/serializable/SerializableLeatherArmorMeta.java @@ -2,7 +2,6 @@ import java.io.ByteArrayInputStream; import java.io.ObjectInputStream; -import java.io.Serializable; import org.bukkit.Material; import org.bukkit.inventory.ItemStack; @@ -13,7 +12,7 @@ -public class SerializableLeatherArmorMeta extends SerializableItemMeta implements Serializable { +public class SerializableLeatherArmorMeta extends SerializableItemMeta { private static final long serialVersionUID = -7716626610545205516L; private SerializableColor color; diff --git a/src/main/java/regalowl/hyperconomy/serializable/SerializableMapMeta.java b/src/main/java/regalowl/hyperconomy/serializable/SerializableMapMeta.java index a37908d8..dda4a3a7 100644 --- a/src/main/java/regalowl/hyperconomy/serializable/SerializableMapMeta.java +++ b/src/main/java/regalowl/hyperconomy/serializable/SerializableMapMeta.java @@ -2,7 +2,6 @@ import java.io.ByteArrayInputStream; import java.io.ObjectInputStream; -import java.io.Serializable; import org.bukkit.Material; import org.bukkit.inventory.ItemStack; @@ -13,7 +12,7 @@ -public class SerializableMapMeta extends SerializableItemMeta implements Serializable { +public class SerializableMapMeta extends SerializableItemMeta { private static final long serialVersionUID = -1095975801937823837L; diff --git a/src/main/java/regalowl/hyperconomy/serializable/SerializablePotionEffect.java b/src/main/java/regalowl/hyperconomy/serializable/SerializablePotionEffect.java index a65a1e85..24ccb550 100644 --- a/src/main/java/regalowl/hyperconomy/serializable/SerializablePotionEffect.java +++ b/src/main/java/regalowl/hyperconomy/serializable/SerializablePotionEffect.java @@ -2,7 +2,6 @@ import java.io.ByteArrayInputStream; import java.io.ObjectInputStream; -import java.io.Serializable; import org.bukkit.potion.PotionEffect; import org.bukkit.potion.PotionEffectType; @@ -10,7 +9,7 @@ -public class SerializablePotionEffect extends SerializableObject implements Serializable { +public class SerializablePotionEffect extends SerializableObject { private static final long serialVersionUID = 1194773802989404854L; diff --git a/src/main/java/regalowl/hyperconomy/serializable/SerializablePotionMeta.java b/src/main/java/regalowl/hyperconomy/serializable/SerializablePotionMeta.java index 3ad49297..63208fe6 100644 --- a/src/main/java/regalowl/hyperconomy/serializable/SerializablePotionMeta.java +++ b/src/main/java/regalowl/hyperconomy/serializable/SerializablePotionMeta.java @@ -2,7 +2,6 @@ import java.io.ByteArrayInputStream; import java.io.ObjectInputStream; -import java.io.Serializable; import java.util.ArrayList; import java.util.List; @@ -16,7 +15,7 @@ -public class SerializablePotionMeta extends SerializableItemMeta implements Serializable { +public class SerializablePotionMeta extends SerializableItemMeta { private static final long serialVersionUID = 7131977924010280498L; private List potionEffects = new ArrayList(); diff --git a/src/main/java/regalowl/hyperconomy/serializable/SerializableSkullMeta.java b/src/main/java/regalowl/hyperconomy/serializable/SerializableSkullMeta.java index eeb89986..9363693b 100644 --- a/src/main/java/regalowl/hyperconomy/serializable/SerializableSkullMeta.java +++ b/src/main/java/regalowl/hyperconomy/serializable/SerializableSkullMeta.java @@ -2,7 +2,6 @@ import java.io.ByteArrayInputStream; import java.io.ObjectInputStream; -import java.io.Serializable; import java.util.UUID; import org.bukkit.Bukkit; @@ -15,7 +14,7 @@ -public class SerializableSkullMeta extends SerializableItemMeta implements Serializable { +public class SerializableSkullMeta extends SerializableItemMeta { private static final long serialVersionUID = -711270187445211416L; diff --git a/src/main/java/regalowl/hyperconomy/shop/GlobalShop.java b/src/main/java/regalowl/hyperconomy/shop/GlobalShop.java index 10582e3d..a43c475d 100644 --- a/src/main/java/regalowl/hyperconomy/shop/GlobalShop.java +++ b/src/main/java/regalowl/hyperconomy/shop/GlobalShop.java @@ -3,7 +3,6 @@ import java.util.ArrayList; import java.util.HashMap; -import regalowl.simpledatalib.CommonFunctions; import regalowl.hyperconomy.HyperConomy; import regalowl.hyperconomy.HyperEconomy; import regalowl.hyperconomy.account.HyperAccount; @@ -12,9 +11,10 @@ import regalowl.hyperconomy.event.ShopModificationEvent; import regalowl.hyperconomy.minecraft.HLocation; import regalowl.hyperconomy.tradeobject.TradeObject; +import regalowl.simpledatalib.CommonFunctions; -public class GlobalShop implements Shop, Comparable{ +public class GlobalShop implements Shop { private transient HyperConomy hc; private static final long serialVersionUID = -4886663609354167778L; diff --git a/src/main/java/regalowl/hyperconomy/shop/PlayerShop.java b/src/main/java/regalowl/hyperconomy/shop/PlayerShop.java index 14e1190c..696d3228 100755 --- a/src/main/java/regalowl/hyperconomy/shop/PlayerShop.java +++ b/src/main/java/regalowl/hyperconomy/shop/PlayerShop.java @@ -4,10 +4,6 @@ import java.util.HashMap; import java.util.concurrent.ConcurrentHashMap; -import regalowl.simpledatalib.CommonFunctions; -import regalowl.simpledatalib.sql.BasicStatement; -import regalowl.simpledatalib.sql.QueryResult; -import regalowl.simpledatalib.sql.WriteStatement; import regalowl.hyperconomy.HyperConomy; import regalowl.hyperconomy.HyperEconomy; import regalowl.hyperconomy.account.HyperAccount; @@ -15,17 +11,21 @@ import regalowl.hyperconomy.account.HyperPlayer; import regalowl.hyperconomy.event.ShopModificationEvent; import regalowl.hyperconomy.minecraft.HLocation; -import regalowl.hyperconomy.tradeobject.BasicTradeObject; import regalowl.hyperconomy.tradeobject.BasicShopTradeObject; -import regalowl.hyperconomy.tradeobject.CompositeTradeItem; +import regalowl.hyperconomy.tradeobject.BasicTradeObject; import regalowl.hyperconomy.tradeobject.CompositeShopTradeItem; +import regalowl.hyperconomy.tradeobject.CompositeTradeItem; +import regalowl.hyperconomy.tradeobject.ShopTradeEnchant; import regalowl.hyperconomy.tradeobject.TradeObject; import regalowl.hyperconomy.tradeobject.TradeObjectStatus; import regalowl.hyperconomy.tradeobject.TradeObjectType; -import regalowl.hyperconomy.tradeobject.ShopTradeEnchant; import regalowl.hyperconomy.util.LanguageFile; +import regalowl.simpledatalib.CommonFunctions; +import regalowl.simpledatalib.sql.BasicStatement; +import regalowl.simpledatalib.sql.QueryResult; +import regalowl.simpledatalib.sql.WriteStatement; -public class PlayerShop implements Shop, Comparable { +public class PlayerShop implements Shop { private transient HyperConomy hc; private static final long serialVersionUID = -159740615025262195L; diff --git a/src/main/java/regalowl/hyperconomy/shop/ServerShop.java b/src/main/java/regalowl/hyperconomy/shop/ServerShop.java index 3b01f236..21d18be5 100755 --- a/src/main/java/regalowl/hyperconomy/shop/ServerShop.java +++ b/src/main/java/regalowl/hyperconomy/shop/ServerShop.java @@ -3,7 +3,6 @@ import java.util.ArrayList; import java.util.HashMap; -import regalowl.simpledatalib.CommonFunctions; import regalowl.hyperconomy.HyperConomy; import regalowl.hyperconomy.HyperEconomy; import regalowl.hyperconomy.account.HyperAccount; @@ -13,8 +12,9 @@ import regalowl.hyperconomy.minecraft.HLocation; import regalowl.hyperconomy.tradeobject.TradeObject; import regalowl.hyperconomy.util.LanguageFile; +import regalowl.simpledatalib.CommonFunctions; -public class ServerShop implements Shop, Comparable{ +public class ServerShop implements Shop { private transient HyperConomy hc; private static final long serialVersionUID = 4242407361167946426L; diff --git a/src/main/java/regalowl/hyperconomy/tradeobject/BasicShopTradeObject.java b/src/main/java/regalowl/hyperconomy/tradeobject/BasicShopTradeObject.java index fde85b03..5d57f222 100755 --- a/src/main/java/regalowl/hyperconomy/tradeobject/BasicShopTradeObject.java +++ b/src/main/java/regalowl/hyperconomy/tradeobject/BasicShopTradeObject.java @@ -4,15 +4,15 @@ import java.util.ArrayList; import java.util.HashMap; -import regalowl.simpledatalib.sql.WriteStatement; import regalowl.hyperconomy.HyperConomy; import regalowl.hyperconomy.account.HyperPlayer; import regalowl.hyperconomy.event.TradeObjectModificationEvent; import regalowl.hyperconomy.event.TradeObjectModificationType; import regalowl.hyperconomy.inventory.HItemStack; import regalowl.hyperconomy.shop.PlayerShop; +import regalowl.simpledatalib.sql.WriteStatement; -public class BasicShopTradeObject extends BasicTradeObject implements TradeObject { +public class BasicShopTradeObject extends BasicTradeObject { private static final long serialVersionUID = -8506945265990355676L; protected String playerShop; diff --git a/src/main/java/regalowl/hyperconomy/tradeobject/ComponentTradeItem.java b/src/main/java/regalowl/hyperconomy/tradeobject/ComponentTradeItem.java index 7be9b419..d4466fa5 100755 --- a/src/main/java/regalowl/hyperconomy/tradeobject/ComponentTradeItem.java +++ b/src/main/java/regalowl/hyperconomy/tradeobject/ComponentTradeItem.java @@ -11,7 +11,7 @@ import regalowl.hyperconomy.inventory.HItemStack; -public class ComponentTradeItem extends BasicTradeObject implements TradeObject { +public class ComponentTradeItem extends BasicTradeObject { private static final long serialVersionUID = -845888542311735442L; diff --git a/src/main/java/regalowl/hyperconomy/tradeobject/CompositeShopTradeItem.java b/src/main/java/regalowl/hyperconomy/tradeobject/CompositeShopTradeItem.java index aff7c83a..0e8d8136 100755 --- a/src/main/java/regalowl/hyperconomy/tradeobject/CompositeShopTradeItem.java +++ b/src/main/java/regalowl/hyperconomy/tradeobject/CompositeShopTradeItem.java @@ -10,7 +10,7 @@ -public class CompositeShopTradeItem extends BasicShopTradeObject implements TradeObject { +public class CompositeShopTradeItem extends BasicShopTradeObject { private static final long serialVersionUID = -6802879836491318792L; diff --git a/src/main/java/regalowl/hyperconomy/tradeobject/CompositeTradeItem.java b/src/main/java/regalowl/hyperconomy/tradeobject/CompositeTradeItem.java index e9176a7b..ff1a5995 100755 --- a/src/main/java/regalowl/hyperconomy/tradeobject/CompositeTradeItem.java +++ b/src/main/java/regalowl/hyperconomy/tradeobject/CompositeTradeItem.java @@ -5,10 +5,9 @@ import regalowl.hyperconomy.HyperConomy; import regalowl.hyperconomy.HyperEconomy; -import regalowl.hyperconomy.tradeobject.TradeObject; import regalowl.simpledatalib.CommonFunctions; -public class CompositeTradeItem extends ComponentTradeItem implements TradeObject { +public class CompositeTradeItem extends ComponentTradeItem { private static final long serialVersionUID = -2104610162054897073L; diff --git a/src/main/java/regalowl/hyperconomy/tradeobject/ShopTradeEnchant.java b/src/main/java/regalowl/hyperconomy/tradeobject/ShopTradeEnchant.java index 93222999..412c5da3 100755 --- a/src/main/java/regalowl/hyperconomy/tradeobject/ShopTradeEnchant.java +++ b/src/main/java/regalowl/hyperconomy/tradeobject/ShopTradeEnchant.java @@ -6,7 +6,7 @@ import regalowl.hyperconomy.inventory.HEnchantment; -public class ShopTradeEnchant extends BasicShopTradeObject implements TradeObject { +public class ShopTradeEnchant extends BasicShopTradeObject { private static final long serialVersionUID = -213806188136759445L; diff --git a/src/main/java/regalowl/hyperconomy/tradeobject/TempTradeItem.java b/src/main/java/regalowl/hyperconomy/tradeobject/TempTradeItem.java index f913eaa7..7b983d86 100755 --- a/src/main/java/regalowl/hyperconomy/tradeobject/TempTradeItem.java +++ b/src/main/java/regalowl/hyperconomy/tradeobject/TempTradeItem.java @@ -8,7 +8,7 @@ import regalowl.hyperconomy.inventory.HItemStack; -public class TempTradeItem extends ComponentTradeItem implements TradeObject { +public class TempTradeItem extends ComponentTradeItem { private static final long serialVersionUID = 4228578172340543286L; diff --git a/src/main/java/regalowl/hyperconomy/tradeobject/TradeEnchant.java b/src/main/java/regalowl/hyperconomy/tradeobject/TradeEnchant.java index bcd54486..45e85fc7 100755 --- a/src/main/java/regalowl/hyperconomy/tradeobject/TradeEnchant.java +++ b/src/main/java/regalowl/hyperconomy/tradeobject/TradeEnchant.java @@ -11,7 +11,7 @@ import regalowl.hyperconomy.inventory.HEnchantment; import regalowl.hyperconomy.inventory.HInventory; -public class TradeEnchant extends BasicTradeObject implements TradeObject { +public class TradeEnchant extends BasicTradeObject { private static final long serialVersionUID = -6150719215822283210L; diff --git a/src/main/java/regalowl/hyperconomy/tradeobject/TradeXp.java b/src/main/java/regalowl/hyperconomy/tradeobject/TradeXp.java index 66fc842f..660ddc15 100755 --- a/src/main/java/regalowl/hyperconomy/tradeobject/TradeXp.java +++ b/src/main/java/regalowl/hyperconomy/tradeobject/TradeXp.java @@ -10,7 +10,7 @@ import regalowl.hyperconomy.account.HyperPlayer; -public class TradeXp extends BasicTradeObject implements TradeObject { +public class TradeXp extends BasicTradeObject { private static final long serialVersionUID = -5156550871200368032L; From f0f124675a2d8c1c263b44aab2d56f168be0a782 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 12:51:48 +0200 Subject: [PATCH 31/49] hp can't be null --- src/main/java/regalowl/hyperconomy/shop/PlayerShop.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/regalowl/hyperconomy/shop/PlayerShop.java b/src/main/java/regalowl/hyperconomy/shop/PlayerShop.java index 696d3228..72ea2f8f 100755 --- a/src/main/java/regalowl/hyperconomy/shop/PlayerShop.java +++ b/src/main/java/regalowl/hyperconomy/shop/PlayerShop.java @@ -664,7 +664,7 @@ public boolean isAllowed(HyperAccount ha) { } if (ha instanceof HyperPlayer) { HyperPlayer hp = (HyperPlayer)ha; - if (hp != null && hp.hasPermission("hyperconomy.admin")) { + if (hp.hasPermission("hyperconomy.admin")) { return true; } } From 9a78a0f30955bd2fde817bb061fa6b69a27265db Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 12:56:05 +0200 Subject: [PATCH 32/49] Fixed potential resource leak Sockets are now managed by 'try-with' which automatically closes them when no longer needed/used --- .../hyperconomy/gui/RemoteGUIServer.java | 28 ++++++------------- .../hyperconomy/multiserver/MultiServer.java | 19 ++++--------- .../hyperconomy/util/LibraryManager.java | 5 ++++ 3 files changed, 18 insertions(+), 34 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/gui/RemoteGUIServer.java b/src/main/java/regalowl/hyperconomy/gui/RemoteGUIServer.java index e899c76c..2d4aa2a1 100644 --- a/src/main/java/regalowl/hyperconomy/gui/RemoteGUIServer.java +++ b/src/main/java/regalowl/hyperconomy/gui/RemoteGUIServer.java @@ -1,6 +1,5 @@ package regalowl.hyperconomy.gui; -import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.net.BindException; @@ -11,11 +10,11 @@ import java.util.Timer; import java.util.TimerTask; -import regalowl.simpledatalib.CommonFunctions; import regalowl.hyperconomy.HyperConomy; import regalowl.hyperconomy.HyperEconomy; import regalowl.hyperconomy.api.ServerConnectionType; import regalowl.hyperconomy.event.DataLoadEvent; +import regalowl.hyperconomy.event.DataLoadEvent.DataLoadType; import regalowl.hyperconomy.event.DisableEvent; import regalowl.hyperconomy.event.GUIChangeType; import regalowl.hyperconomy.event.HyperBankModificationEvent; @@ -23,14 +22,14 @@ import regalowl.hyperconomy.event.HyperEconomyDeletionEvent; import regalowl.hyperconomy.event.HyperEvent; import regalowl.hyperconomy.event.HyperEventListener; +import regalowl.hyperconomy.event.HyperPlayerModificationEvent; +import regalowl.hyperconomy.event.RequestGUIChangeEvent; +import regalowl.hyperconomy.event.ShopModificationEvent; import regalowl.hyperconomy.event.TradeObjectModificationEvent; import regalowl.hyperconomy.event.TradeObjectModificationType; -import regalowl.hyperconomy.event.DataLoadEvent.DataLoadType; import regalowl.hyperconomy.shop.PlayerShop; import regalowl.hyperconomy.tradeobject.TradeObject; -import regalowl.hyperconomy.event.HyperPlayerModificationEvent; -import regalowl.hyperconomy.event.RequestGUIChangeEvent; -import regalowl.hyperconomy.event.ShopModificationEvent; +import regalowl.simpledatalib.CommonFunctions; public class RemoteGUIServer implements HyperEventListener { @@ -418,11 +417,8 @@ private void startServer() { public void run() { while (runServer) { GUITransferObject incomingTransfer = null; - ServerSocket serverSocket = null; - Socket socket = null; - try { - serverSocket = new ServerSocket(listenPort); - socket = serverSocket.accept(); + try (ServerSocket serverSocket = new ServerSocket(listenPort); + Socket socket = serverSocket.accept()) { ObjectInputStream input = new ObjectInputStream(socket.getInputStream()); incomingTransfer = (GUITransferObject) input.readObject(); @@ -434,8 +430,6 @@ public void run() { ObjectOutputStream out = new ObjectOutputStream(socket.getOutputStream()); out.writeObject(response); out.flush(); - socket.close(); - serverSocket.close(); return; } resetDisconnectTimer = true; @@ -496,18 +490,12 @@ public void run() { out.writeObject(response); out.flush(); } - socket.close(); - serverSocket.close(); } catch (BindException be) { runServer = false; hc.getDebugMode().debugWriteError(be); hc.getDebugMode().debugWriteMessage("Remote GUI disabled. Port already in use by something else. Check your config."); } catch (Exception e) { - try { - hc.getDebugMode().debugWriteError(e); - if (socket != null) socket.close(); - if (serverSocket != null) serverSocket.close(); - } catch (IOException e1) {} + hc.getDebugMode().debugWriteError(e); } } } diff --git a/src/main/java/regalowl/hyperconomy/multiserver/MultiServer.java b/src/main/java/regalowl/hyperconomy/multiserver/MultiServer.java index b2d432d3..563712c7 100644 --- a/src/main/java/regalowl/hyperconomy/multiserver/MultiServer.java +++ b/src/main/java/regalowl/hyperconomy/multiserver/MultiServer.java @@ -1,6 +1,5 @@ package regalowl.hyperconomy.multiserver; -import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.net.InetSocketAddress; @@ -10,7 +9,6 @@ import java.util.Timer; import java.util.TimerTask; -import regalowl.simpledatalib.CommonFunctions; import regalowl.hyperconomy.HyperConomy; import regalowl.hyperconomy.HyperEconomy; import regalowl.hyperconomy.account.HyperBank; @@ -21,13 +19,14 @@ import regalowl.hyperconomy.event.HyperBankModificationEvent; import regalowl.hyperconomy.event.HyperEvent; import regalowl.hyperconomy.event.HyperEventListener; -import regalowl.hyperconomy.event.TradeObjectModificationEvent; import regalowl.hyperconomy.event.HyperPlayerModificationEvent; import regalowl.hyperconomy.event.ShopModificationEvent; +import regalowl.hyperconomy.event.TradeObjectModificationEvent; import regalowl.hyperconomy.shop.HyperShopManager; import regalowl.hyperconomy.shop.PlayerShop; import regalowl.hyperconomy.shop.Shop; import regalowl.hyperconomy.tradeobject.TradeObject; +import regalowl.simpledatalib.CommonFunctions; public class MultiServer implements HyperEventListener { @@ -92,11 +91,9 @@ private void receiveUpdate() { public void run() { while (runServer) { MultiServerTransferObject transferObject = null; - ServerSocket serverSocket = null; - Socket sClientSocket = null; - try { - serverSocket = new ServerSocket(listenPort); - sClientSocket = serverSocket.accept(); + try (ServerSocket serverSocket = new ServerSocket(listenPort); + Socket sClientSocket = serverSocket.accept();) { + ObjectInputStream input = new ObjectInputStream(sClientSocket.getInputStream()); transferObject = (MultiServerTransferObject) input.readObject(); if (transferObject.getType() == MultiServerTransferType.MULTI_SERVER_REQUEST_UPDATE) { @@ -108,14 +105,8 @@ public void run() { ObjectOutputStream out = new ObjectOutputStream(sClientSocket.getOutputStream()); out.writeObject(new MultiServerTransferObject(MultiServerTransferType.MULTI_SERVER_UPDATE_SUCCESSFUL)); out.flush(); - sClientSocket.close(); - serverSocket.close(); } catch (Exception e) { - try { //hc.getDebugMode().debugWriteError(e); - if (sClientSocket != null) sClientSocket.close(); - if (serverSocket != null) serverSocket.close(); - } catch (IOException e1) {} } } } diff --git a/src/main/java/regalowl/hyperconomy/util/LibraryManager.java b/src/main/java/regalowl/hyperconomy/util/LibraryManager.java index 1f552aaa..f21ab35c 100644 --- a/src/main/java/regalowl/hyperconomy/util/LibraryManager.java +++ b/src/main/java/regalowl/hyperconomy/util/LibraryManager.java @@ -232,6 +232,11 @@ private void addURL(URL url) { Method method = URLClassLoader.class.getDeclaredMethod("addURL", new Class[] { URL.class }); method.setAccessible(true); method.invoke(loader, url); + try { + loader.close(); + } catch (Exception exc) { + // ignore, was already closed + } } catch (Exception e) { e.printStackTrace(); } From eeab58340955aebbfab618a6f758606b5267b3f5 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 13:02:25 +0200 Subject: [PATCH 33/49] Removed unnecessary casts --- .../hyperconomy/inventory/HItemMetaFactory.java | 2 +- src/main/java/regalowl/hyperconomy/shop/ChestShop.java | 6 ++---- .../regalowl/hyperconomy/shop/ChestShopHandler.java | 10 ++++------ .../java/regalowl/hyperconomy/shop/PlayerShop.java | 4 ++-- .../hyperconomy/tradeobject/BasicTradeObject.java | 7 +++---- .../hyperconomy/tradeobject/CompositeTradeItem.java | 2 +- 6 files changed, 13 insertions(+), 18 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/inventory/HItemMetaFactory.java b/src/main/java/regalowl/hyperconomy/inventory/HItemMetaFactory.java index 599c7c6b..8033ff17 100644 --- a/src/main/java/regalowl/hyperconomy/inventory/HItemMetaFactory.java +++ b/src/main/java/regalowl/hyperconomy/inventory/HItemMetaFactory.java @@ -25,7 +25,7 @@ public static HItemMeta generate(HItemMeta meta) { switch (meta.getType()) { case ITEM: return new HItemMeta(meta); case BOOK: return new HBookMeta((HBookMeta)meta); - case ENCHANTMENT_STORAGE: return new HEnchantmentStorageMeta((HEnchantmentStorageMeta)meta); + case ENCHANTMENT_STORAGE: return new HEnchantmentStorageMeta(meta); case FIREWORK_EFFECT: return new HFireworkEffectMeta((HFireworkEffectMeta)meta); case FIREWORK: return new HFireworkMeta((HFireworkMeta)meta); case LEATHER_ARMOR: return new HLeatherArmorMeta((HLeatherArmorMeta)meta); diff --git a/src/main/java/regalowl/hyperconomy/shop/ChestShop.java b/src/main/java/regalowl/hyperconomy/shop/ChestShop.java index 6af0e03e..9bb71b0a 100644 --- a/src/main/java/regalowl/hyperconomy/shop/ChestShop.java +++ b/src/main/java/regalowl/hyperconomy/shop/ChestShop.java @@ -1,13 +1,10 @@ package regalowl.hyperconomy.shop; -import regalowl.simpledatalib.CommonFunctions; - import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; import java.util.List; - import java.util.concurrent.atomic.AtomicBoolean; import regalowl.hyperconomy.HyperConomy; @@ -21,6 +18,7 @@ import regalowl.hyperconomy.minecraft.HSign; import regalowl.hyperconomy.tradeobject.TempTradeItem; import regalowl.hyperconomy.tradeobject.TradeObject; +import regalowl.simpledatalib.CommonFunctions; public class ChestShop { @@ -226,7 +224,7 @@ public long getPriceIncrement() { return priceIncrement; } public double getFractionalPriceIncrement() { - double p = (double)priceIncrement; + double p = priceIncrement; return p/100.0; } public void setPriceIncrement(long priceIncrement) { diff --git a/src/main/java/regalowl/hyperconomy/shop/ChestShopHandler.java b/src/main/java/regalowl/hyperconomy/shop/ChestShopHandler.java index 515c3ab4..f485bed1 100644 --- a/src/main/java/regalowl/hyperconomy/shop/ChestShopHandler.java +++ b/src/main/java/regalowl/hyperconomy/shop/ChestShopHandler.java @@ -3,10 +3,6 @@ -import regalowl.simpledatalib.CommonFunctions; -import regalowl.simpledatalib.sql.QueryResult; -import regalowl.simpledatalib.sql.SQLRead; - import java.util.ArrayList; import java.util.concurrent.ConcurrentHashMap; @@ -15,7 +11,6 @@ import regalowl.hyperconomy.HyperEconomy; import regalowl.hyperconomy.account.HyperAccount; import regalowl.hyperconomy.account.HyperPlayer; - import regalowl.hyperconomy.event.DataLoadEvent; import regalowl.hyperconomy.event.DataLoadEvent.DataLoadType; import regalowl.hyperconomy.event.HyperEvent; @@ -41,6 +36,9 @@ import regalowl.hyperconomy.transaction.TransactionResponse; import regalowl.hyperconomy.transaction.TransactionType; import regalowl.hyperconomy.util.LanguageFile; +import regalowl.simpledatalib.CommonFunctions; +import regalowl.simpledatalib.sql.QueryResult; +import regalowl.simpledatalib.sql.SQLRead; public class ChestShopHandler implements HyperEventListener { @@ -901,7 +899,7 @@ private void handleSignChange(HSignChangeEvent event) { return; } - ChestShop newShop = new ChestShop(hc, cLoc, (HyperAccount)hp, 100); + ChestShop newShop = new ChestShop(hc, cLoc, hp, 100); newShop.initialize(); if (!newShop.isValid()) return; chestShops.put(cLoc, newShop); diff --git a/src/main/java/regalowl/hyperconomy/shop/PlayerShop.java b/src/main/java/regalowl/hyperconomy/shop/PlayerShop.java index 72ea2f8f..225a77b3 100755 --- a/src/main/java/regalowl/hyperconomy/shop/PlayerShop.java +++ b/src/main/java/regalowl/hyperconomy/shop/PlayerShop.java @@ -12,7 +12,6 @@ import regalowl.hyperconomy.event.ShopModificationEvent; import regalowl.hyperconomy.minecraft.HLocation; import regalowl.hyperconomy.tradeobject.BasicShopTradeObject; -import regalowl.hyperconomy.tradeobject.BasicTradeObject; import regalowl.hyperconomy.tradeobject.CompositeShopTradeItem; import regalowl.hyperconomy.tradeobject.CompositeTradeItem; import regalowl.hyperconomy.tradeobject.ShopTradeEnchant; @@ -586,7 +585,8 @@ public TradeObject getPlayerShopObject(TradeObject hyperObject) { hc.getSQLWrite().addToQueue(ws); return pso; } else { - TradeObject pso = new BasicShopTradeObject(hc, name, (BasicTradeObject)hyperObject, 0.0, 0.0, 0.0, 100000, TradeObjectStatus.NONE, useEconomyStock); + TradeObject pso = new BasicShopTradeObject(hc, name, hyperObject, 0.0, 0.0, 0.0, 100000, + TradeObjectStatus.NONE, useEconomyStock); shopContents.put(hyperObject.getName(), pso); hc.getSQLWrite().addToQueue(ws); return pso; diff --git a/src/main/java/regalowl/hyperconomy/tradeobject/BasicTradeObject.java b/src/main/java/regalowl/hyperconomy/tradeobject/BasicTradeObject.java index b169eb70..cdb7322c 100755 --- a/src/main/java/regalowl/hyperconomy/tradeobject/BasicTradeObject.java +++ b/src/main/java/regalowl/hyperconomy/tradeobject/BasicTradeObject.java @@ -7,8 +7,6 @@ import java.util.Map; import java.util.concurrent.ConcurrentHashMap; -import regalowl.simpledatalib.CommonFunctions; -import regalowl.simpledatalib.sql.SQLWrite; import regalowl.hyperconomy.HyperConomy; import regalowl.hyperconomy.HyperEconomy; import regalowl.hyperconomy.account.HyperPlayer; @@ -21,7 +19,8 @@ import regalowl.hyperconomy.inventory.HItemStack; import regalowl.hyperconomy.shop.PlayerShop; import regalowl.hyperconomy.shop.Shop; -import regalowl.hyperconomy.tradeobject.TradeObject; +import regalowl.simpledatalib.CommonFunctions; +import regalowl.simpledatalib.sql.SQLWrite; @@ -516,7 +515,7 @@ public void setCompositeData(String compositeData) { amount = ((double)top/(double)bottom); } else { int number = Integer.parseInt(amountString); - amount = (double)number; + amount = number; } TradeObject ho = hc.getDataManager().getEconomyIB(economy).getTradeObject(oname); if (this.components != null && ho != null) this.components.put(ho.getName(), amount); diff --git a/src/main/java/regalowl/hyperconomy/tradeobject/CompositeTradeItem.java b/src/main/java/regalowl/hyperconomy/tradeobject/CompositeTradeItem.java index ff1a5995..ab7bfd4c 100755 --- a/src/main/java/regalowl/hyperconomy/tradeobject/CompositeTradeItem.java +++ b/src/main/java/regalowl/hyperconomy/tradeobject/CompositeTradeItem.java @@ -24,7 +24,7 @@ public CompositeTradeItem(HyperConomy hc, HyperEconomy he, String name, String e amount = ((double)top/(double)bottom); } else { int number = Integer.parseInt(amountString); - amount = (double)number; + amount = number; } TradeObject ho = he.getTradeObject(oname); this.components.put(ho.getName(), amount); From 27dca89b8895e391dde4525762dc9bffc11fe757 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 16:52:02 +0200 Subject: [PATCH 34/49] NBT CMethod fixed Cmethod is now called 'getKeys' in minecraft which is a more apropriate name --- src/main/java/regalowl/hyperconomy/bukkit/NBTTools.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/regalowl/hyperconomy/bukkit/NBTTools.java b/src/main/java/regalowl/hyperconomy/bukkit/NBTTools.java index a42c55ec..dbb7739f 100644 --- a/src/main/java/regalowl/hyperconomy/bukkit/NBTTools.java +++ b/src/main/java/regalowl/hyperconomy/bukkit/NBTTools.java @@ -52,7 +52,7 @@ public NBTTools() { nmsItemStackGetTagMethod = nmsItemStack.getClass().getMethod("getTag"); nmsItemStackSetTagMethod = nmsItemStack.getClass().getMethod("setTag", nbtTag.getClass()); nbtTagCompoundHasKeyMethod = nbtTag.getClass().getMethod("hasKey", String.class); - nbtTagCompoundCMethod = nbtTag.getClass().getMethod("c"); + nbtTagCompoundCMethod = nbtTag.getClass().getMethod("getKeys"); nbtTagCompoundSetMethod = nbtTag.getClass().getMethod("set", String.class, nbtBase); nbtTagCompoundGetCompoundMethod = nbtTag.getClass().getMethod("getCompound", String.class); nbtTagCompoundSetStringMethod = nbtTag.getClass().getMethod("setString", String.class, String.class); From d45783bad3faeab1aab65e54a157493f76134a14 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 18:07:53 +0200 Subject: [PATCH 35/49] ClassLoader WorkAround --- src/main/java/regalowl/hyperconomy/util/LibraryManager.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/regalowl/hyperconomy/util/LibraryManager.java b/src/main/java/regalowl/hyperconomy/util/LibraryManager.java index f21ab35c..130f59be 100644 --- a/src/main/java/regalowl/hyperconomy/util/LibraryManager.java +++ b/src/main/java/regalowl/hyperconomy/util/LibraryManager.java @@ -228,7 +228,7 @@ public synchronized void run() { private void addURL(URL url) { try { ClassLoader cl = ClassLoader.getSystemClassLoader(); - URLClassLoader loader = (URLClassLoader) cl; + URLClassLoader loader = new URLClassLoader(new URL[] { url }, cl); Method method = URLClassLoader.class.getDeclaredMethod("addURL", new Class[] { URL.class }); method.setAccessible(true); method.invoke(loader, url); From cd0188950cc395de2464e3a12ddee89741986bc7 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 20:18:14 +0200 Subject: [PATCH 36/49] Added HEnchantment.toString() for easier debugging --- src/main/java/regalowl/hyperconomy/inventory/HEnchantment.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/main/java/regalowl/hyperconomy/inventory/HEnchantment.java b/src/main/java/regalowl/hyperconomy/inventory/HEnchantment.java index 29f2c97b..26a1f7f1 100644 --- a/src/main/java/regalowl/hyperconomy/inventory/HEnchantment.java +++ b/src/main/java/regalowl/hyperconomy/inventory/HEnchantment.java @@ -77,4 +77,7 @@ public boolean equals(Object obj) { return true; } + public String toString() { + return enchantment.getNamespace() + ":" + enchantment.getKey() + "~" + lvl; + } } \ No newline at end of file From 82f902126ec8194203beb739f3a8b8f70b22f8c1 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 20:18:52 +0200 Subject: [PATCH 37/49] Fixed BukkitCommon getSerializableItemStack for Enchantments --- src/main/java/regalowl/hyperconomy/bukkit/BukkitCommon.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/bukkit/BukkitCommon.java b/src/main/java/regalowl/hyperconomy/bukkit/BukkitCommon.java index 82751e77..61c2eb30 100644 --- a/src/main/java/regalowl/hyperconomy/bukkit/BukkitCommon.java +++ b/src/main/java/regalowl/hyperconomy/bukkit/BukkitCommon.java @@ -411,7 +411,7 @@ public HItemStack getSerializableItemStack(ItemStack s) { while (it.hasNext()) { Enchantment e = it.next(); int lvl = enchants.get(e); - enchantments.add(new HEnchantment(e.getName(), lvl)); + enchantments.add(new HEnchantment(e.getKey().getKey(), lvl)); } ArrayList itemFlags = new ArrayList(); Set flags = im.getItemFlags(); @@ -435,7 +435,7 @@ public HItemStack getSerializableItemStack(ItemStack s) { while (iter.hasNext()) { Enchantment e = iter.next(); int lvl = stored.get(e); - storedEnchantments.add(new HEnchantment(e.getName(), lvl)); + storedEnchantments.add(new HEnchantment(e.getKey().getKey(), lvl)); } itemMeta = new HEnchantmentStorageMeta(displayName, lore, itemFlags, unbreakable, repairCost, storedEnchantments); } else if (im instanceof BookMeta) { From 8e72c461bcea632b5f97f71e7e0e770187f4f56d Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 20:20:19 +0200 Subject: [PATCH 38/49] Fixes #153 --- .../java/regalowl/hyperconomy/util/LibraryManager.java | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/util/LibraryManager.java b/src/main/java/regalowl/hyperconomy/util/LibraryManager.java index 130f59be..01046778 100644 --- a/src/main/java/regalowl/hyperconomy/util/LibraryManager.java +++ b/src/main/java/regalowl/hyperconomy/util/LibraryManager.java @@ -6,9 +6,7 @@ import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; -import java.lang.reflect.Method; import java.net.URL; -import java.net.URLClassLoader; import java.util.ArrayList; import java.util.Enumeration; import java.util.Iterator; @@ -17,6 +15,8 @@ import java.util.jar.JarEntry; import java.util.jar.JarFile; +import javax.management.loading.MLet; + import regalowl.hyperconomy.HyperConomy; import regalowl.hyperconomy.api.ServerConnectionType; import regalowl.hyperconomy.event.DataLoadEvent; @@ -228,10 +228,8 @@ public synchronized void run() { private void addURL(URL url) { try { ClassLoader cl = ClassLoader.getSystemClassLoader(); - URLClassLoader loader = new URLClassLoader(new URL[] { url }, cl); - Method method = URLClassLoader.class.getDeclaredMethod("addURL", new Class[] { URL.class }); - method.setAccessible(true); - method.invoke(loader, url); + MLet loader = new MLet(new URL[] { url }, cl); + loader.addURL(url); try { loader.close(); } catch (Exception exc) { From 2923a7617dc8d785b3ec878e88b8ad3065e166ea Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 22:17:58 +0200 Subject: [PATCH 39/49] Added helpful Log Messages for Enabling, etc. --- src/main/java/regalowl/hyperconomy/bukkit/BukkitConnector.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/main/java/regalowl/hyperconomy/bukkit/BukkitConnector.java b/src/main/java/regalowl/hyperconomy/bukkit/BukkitConnector.java index d268bc02..c6c531dd 100644 --- a/src/main/java/regalowl/hyperconomy/bukkit/BukkitConnector.java +++ b/src/main/java/regalowl/hyperconomy/bukkit/BukkitConnector.java @@ -97,14 +97,17 @@ public BukkitCommon getBukkitCommon() { public void onLoad() { if (hc == null) hc = new HyperConomy(this); hc.load(); + getLogger().info("Loaded"); } @Override public void onEnable() { hc.enable(); + getLogger().info("Enabled"); } @Override public void onDisable() { hc.disable(false); + getLogger().info("Disabled"); } @Override public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { From 4e9dc3cd9c53f32a6d2c3b366ac366f03170166f Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 22:19:32 +0200 Subject: [PATCH 40/49] Added a way to dump all Materials to a file Create a debug.mode file or folder in the HyperConomy-Config folder. Start the Server A materials.list file is written And a LogEntry tells you that it has been written --- .../regalowl/hyperconomy/HyperConomy.java | 48 ++++++++++++++++++- 1 file changed, 46 insertions(+), 2 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/HyperConomy.java b/src/main/java/regalowl/hyperconomy/HyperConomy.java index e42ac127..2d3df50b 100644 --- a/src/main/java/regalowl/hyperconomy/HyperConomy.java +++ b/src/main/java/regalowl/hyperconomy/HyperConomy.java @@ -1,6 +1,18 @@ package regalowl.hyperconomy; +import java.io.File; +import java.io.FileNotFoundException; +import java.io.PrintStream; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.concurrent.atomic.AtomicBoolean; + +import org.bukkit.Material; +import org.bukkit.enchantments.Enchantment; +import org.bukkit.plugin.java.JavaPlugin; + import regalowl.hyperconomy.account.HyperBankManager; import regalowl.hyperconomy.account.HyperPlayerManager; import regalowl.hyperconomy.api.API; @@ -94,8 +106,6 @@ import regalowl.simpledatalib.sql.SQLRead; import regalowl.simpledatalib.sql.SQLWrite; -import java.util.concurrent.atomic.AtomicBoolean; - public class HyperConomy implements HyperEventListener, SDLEventListener { private transient MineCraftConnector mc; @@ -194,6 +204,40 @@ public void load() { //dp.enable(); waitingForLibraries.set(true); lm = new LibraryManager(this,heh); + if (Arrays.asList(((JavaPlugin) mc).getDataFolder().list()).contains("debug.mode")) + dumpMaterialList(); + } + + /** + * Dumps all Materials and Enchantments into materials.log (LEGCY_ Materials are + * omitted!) + */ + public void dumpMaterialList() { + ArrayList listMaterials = new ArrayList<>(); + ArrayList listEnchantments = new ArrayList<>(); + try (PrintStream out = new PrintStream(new File(((JavaPlugin) mc).getDataFolder(), "materials.list"))) { + for (Material m : Material.values()) { + if (("" + m).startsWith("LEGACY_")) + continue; + listMaterials.add("" + m); + } + for (Enchantment e : Enchantment.values()) { + if (("" + e).startsWith("LEGACY_")) + continue; + listEnchantments.add("" + e + " - LevelRange: " + e.getStartLevel() + "-" + e.getMaxLevel() + + " - Target:" + e.getItemTarget()); + } + Collections.sort(listMaterials); + Collections.sort(listEnchantments); + for (String s : listMaterials) + out.println(s); + for (String s : listEnchantments) + out.println(s); + ((JavaPlugin) mc).getLogger().info("Material list written!" + " Materials: " + listMaterials.size() + + "; Enchantments: " + listEnchantments.size()); + } catch (FileNotFoundException e) { + e.printStackTrace(); + } } public void enable() { From 70d156f35110f837add702bc3a5a53ff4b0d557c Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 23:41:14 +0200 Subject: [PATCH 41/49] Updated HyperConomy.dumpMaterialList now includes Potion effects and null checks --- .../regalowl/hyperconomy/HyperConomy.java | 20 +++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/HyperConomy.java b/src/main/java/regalowl/hyperconomy/HyperConomy.java index 2d3df50b..4933caef 100644 --- a/src/main/java/regalowl/hyperconomy/HyperConomy.java +++ b/src/main/java/regalowl/hyperconomy/HyperConomy.java @@ -12,6 +12,7 @@ import org.bukkit.Material; import org.bukkit.enchantments.Enchantment; import org.bukkit.plugin.java.JavaPlugin; +import org.bukkit.potion.PotionEffectType; import regalowl.hyperconomy.account.HyperBankManager; import regalowl.hyperconomy.account.HyperPlayerManager; @@ -215,26 +216,37 @@ public void load() { public void dumpMaterialList() { ArrayList listMaterials = new ArrayList<>(); ArrayList listEnchantments = new ArrayList<>(); + ArrayList listPotions = new ArrayList<>(); try (PrintStream out = new PrintStream(new File(((JavaPlugin) mc).getDataFolder(), "materials.list"))) { for (Material m : Material.values()) { - if (("" + m).startsWith("LEGACY_")) + if (m == null || ("" + m).startsWith("LEGACY_")) continue; listMaterials.add("" + m); } for (Enchantment e : Enchantment.values()) { - if (("" + e).startsWith("LEGACY_")) + if (e == null || ("" + e).startsWith("LEGACY_")) continue; listEnchantments.add("" + e + " - LevelRange: " + e.getStartLevel() + "-" + e.getMaxLevel() - + " - Target:" + e.getItemTarget()); + + " - Target: " + e.getItemTarget() + " - isTreasure: " + e.isTreasure()); + } + for (PotionEffectType p : PotionEffectType.values()) { + if (p == null || ("" + p).startsWith("LEGACY_")) + continue; + listEnchantments + .add("" + p + " - DurationMod: " + p.getDurationModifier() + " - Color: " + p.getColor() + + " - Instant: " + p.isInstant()); } Collections.sort(listMaterials); Collections.sort(listEnchantments); + Collections.sort(listPotions); for (String s : listMaterials) out.println(s); for (String s : listEnchantments) out.println(s); + for (String s : listPotions) + out.println(s); ((JavaPlugin) mc).getLogger().info("Material list written!" + " Materials: " + listMaterials.size() - + "; Enchantments: " + listEnchantments.size()); + + "; Enchantments: " + listEnchantments.size() + "; Potions: " + listPotions.size()); } catch (FileNotFoundException e) { e.printStackTrace(); } From f3c2d0f145b3a795da3cec0cee0852c4d04c1acb Mon Sep 17 00:00:00 2001 From: Unknown Date: Sun, 22 Jul 2018 23:42:19 +0200 Subject: [PATCH 42/49] Updated pom to 1.8 Fixes #148 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 53b38a23..89c50a0e 100644 --- a/pom.xml +++ b/pom.xml @@ -165,8 +165,8 @@ maven-compiler-plugin 3.7.0 - 1.6 - 1.6 + 1.8 + 1.8 From 1bcda45e61c65ec9ed0d653013a741099850ee81 Mon Sep 17 00:00:00 2001 From: Pingger Shikkoken Date: Wed, 29 Aug 2018 19:04:54 +0200 Subject: [PATCH 43/49] another pom update Changed no longer available maven repository to a new one, that should work for now --- pom.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index 89c50a0e..23f4af09 100644 --- a/pom.xml +++ b/pom.xml @@ -8,8 +8,8 @@ HyperConomy creates a global market that can be accessed via designated shops. Prices follow a hyperbolic curve, and vary based on the stock of the item or enchantment. Everything in the market can be customized, from the items themselves to the names of the shops. HyperConomy supports every item in Minecraft, even the normally impossible to obtain ones. It allows a great deal of control over the economy, allowing you to edit any setting without a server restart. - Articdive-repo - http://ci.articdive.cf/plugin/repository/everything/ + Iskariot-repo + https://www.iskariot.info/jenkins/plugin/repository/everything/ Sonatype-public @@ -34,7 +34,7 @@ org.spigotmc spigot-api - 1.13-pre7-R0.1-SNAPSHOT + 1.13-R0.1-SNAPSHOT provided From b3d55e070334cadd643298d14e524acb965a186e Mon Sep 17 00:00:00 2001 From: Pingger Shikkoken Date: Tue, 11 Sep 2018 19:58:48 +0200 Subject: [PATCH 44/49] Pom Update --- pom.xml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pom.xml b/pom.xml index 23f4af09..f22df162 100644 --- a/pom.xml +++ b/pom.xml @@ -11,6 +11,11 @@ Iskariot-repo https://www.iskariot.info/jenkins/plugin/repository/everything/ + + Articdive-repo + https://ci.articdive.de/plugin/repository/everything/ + + Sonatype-public SnakeYAML repository From 36a7cd24df333d65e6bceeac6581c38a2308b85d Mon Sep 17 00:00:00 2001 From: Pingger Shikkoken Date: Sun, 30 Sep 2018 20:57:07 +0200 Subject: [PATCH 45/49] Documentation for HyperAccount +HyperAccount Documentation +HyperAccount updateBalance(...) function ~HyperAccount hasBalance(...) changed to 'default' from 'public' ~HyperAccount Sorted Class-Members --- .../hyperconomy/account/HyperAccount.java | 79 +++++++++++++++++-- 1 file changed, 72 insertions(+), 7 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/account/HyperAccount.java b/src/main/java/regalowl/hyperconomy/account/HyperAccount.java index 5c98fa4e..1ef8a2d6 100755 --- a/src/main/java/regalowl/hyperconomy/account/HyperAccount.java +++ b/src/main/java/regalowl/hyperconomy/account/HyperAccount.java @@ -2,16 +2,81 @@ import java.io.Serializable; +/** + * This interface defines all necessary functions of a {@link HyperAccount} + * + * @author Pingger + * @author RegalOwl + */ public interface HyperAccount extends Serializable { - - public String getName(); - public double getBalance(); + /** + * Deposits the given amount into the {@link HyperAccount} + * + * @param amount the amount to deposit + */ public void deposit(double amount); - public void withdraw(double amount); - public void setName(String newName); - public void setBalance(double balance); - public boolean hasBalance(double balance); + + /** + * @return the Balance of the {@link HyperAccount} + */ + public double getBalance(); + + /** + * @return the Name of the {@link HyperAccount} + */ + public String getName(); + + /** + * Sends a message to this {@link HyperAccount}. Actual effect is implementation + * dependent + * + * @param message + */ public void sendMessage(String message); + /** + * Sets this {@link HyperAccount}'s Balance to the given value + * + * @param balance the balance to set + */ + public void setBalance(double balance); + + /** + * Changes the Name of this {@link HyperAccount} + * + * @param newName the new Name to assign + */ + public void setName(String newName); + + /** + * Withdraws the amount from the {@link HyperAccount} + * + * @param amount the amount to withdraw + */ + public void withdraw(double amount); + + /** + * Checks if this {@link HyperAccount} has the given Balance or more. + * + * @param balance the balance to at least have + * @return true, if {@link HyperAccount#getBalance()}>=balance + */ + default boolean hasBalance(double balance) { + return getBalance() >= balance; + } + /** + * Updates this {@link HyperAccount}'s Balance. Positive Value deposits, + * negative Value withdraws. Zero/NaN does nothing. + * + * @param amount the amount to deposit/withdraw from this {@link HyperAccount} + */ + default void updateBalance(double amount) { + if (amount > 0) { + deposit(amount); + } else if (amount < 0) { + withdraw(amount); + } + // on 0 do nothing, because no change + } } From 860367e052e834ed113893df838188f18f8f6b57 Mon Sep 17 00:00:00 2001 From: Pingger Shikkoken Date: Tue, 2 Oct 2018 18:10:12 +0200 Subject: [PATCH 46/49] Fix for #2 --- .../regalowl/hyperconomy/account/HyperPlayer.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/main/java/regalowl/hyperconomy/account/HyperPlayer.java b/src/main/java/regalowl/hyperconomy/account/HyperPlayer.java index ceef2329..ea677282 100644 --- a/src/main/java/regalowl/hyperconomy/account/HyperPlayer.java +++ b/src/main/java/regalowl/hyperconomy/account/HyperPlayer.java @@ -3,8 +3,6 @@ import java.util.HashMap; import java.util.UUID; -import regalowl.simpledatalib.CommonFunctions; -import regalowl.simpledatalib.sql.SQLWrite; import regalowl.hyperconomy.DataManager; import regalowl.hyperconomy.HyperConomy; import regalowl.hyperconomy.HyperEconomy; @@ -16,6 +14,8 @@ import regalowl.hyperconomy.transaction.PlayerTransaction; import regalowl.hyperconomy.transaction.TransactionProcessor; import regalowl.hyperconomy.transaction.TransactionResponse; +import regalowl.simpledatalib.CommonFunctions; +import regalowl.simpledatalib.sql.SQLWrite; @@ -387,7 +387,9 @@ public void setInternalBalance(double balance) { @Override public void deposit(double amount) { - if (hc.getMC().useExternalEconomy()) { + if (amount < 0) { + withdraw(-amount); + } else if (hc.getMC().useExternalEconomy()) { checkExternalAccount(); hc.getMC().getEconomyProvider().depositAccount(name, amount); hc.getLog().writeAuditLog(name, "deposit", amount, hc.getMC().getEconomyProvider().getEconomyName()); @@ -406,7 +408,9 @@ public void deposit(double amount) { @Override public void withdraw(double amount) { - if (hc.getMC().useExternalEconomy()) { + if (amount < 0) { + deposit(-amount); + } else if (hc.getMC().useExternalEconomy()) { checkExternalAccount(); hc.getMC().getEconomyProvider().withdrawAccount(name, amount); hc.getLog().writeAuditLog(name, "withdrawal", amount, hc.getMC().getEconomyProvider().getEconomyName()); From d4a0d55207f212d0e05c1ad3f973195ac702019c Mon Sep 17 00:00:00 2001 From: Pingger Shikkoken Date: Tue, 2 Oct 2018 18:12:02 +0200 Subject: [PATCH 47/49] Added simple jenkinsfile for better automation --- Jenkinsfile | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 Jenkinsfile diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 00000000..b5c25f05 --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,22 @@ +node { + def mvnHome + stage('Preparation') { + checkout scm + // Get the Maven tool. + // ** NOTE: This 'M3' Maven tool must be configured + // ** in the global configuration. + mvnHome = tool 'M3' + } + stage('Build') { + // Run the maven build + if (isUnix()) { + sh "'${mvnHome}/bin/mvn' -Dmaven.test.failure.ignore clean package" + } else { + bat(/"${mvnHome}\bin\mvn" -Dmaven.test.failure.ignore clean package/) + } + } + stage('Results') { + junit allowEmptyResults: true, testResults: '**/target/surefire-reports/TEST-*.xml' + archive 'target/*.jar' + } +} \ No newline at end of file From f48d3aa82b001e00b4ad434a86f0da2debd7ae3e Mon Sep 17 00:00:00 2001 From: Pingger Shikkoken Date: Thu, 4 Oct 2018 10:37:13 +0200 Subject: [PATCH 48/49] Updated Arctic Drive maven repository url Fixed #3 Removed unnecessary blank line --- pom.xml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index f22df162..3f76f26d 100644 --- a/pom.xml +++ b/pom.xml @@ -13,9 +13,8 @@ Articdive-repo - https://ci.articdive.de/plugin/repository/everything/ + https://nexus.articdive.de/repository/maven-snapshots/ - Sonatype-public SnakeYAML repository From 8d7c3f59f3f40cb316b7469b03640b8e70d71753 Mon Sep 17 00:00:00 2001 From: Pingger Shikkoken Date: Thu, 4 Oct 2018 10:37:13 +0200 Subject: [PATCH 49/49] Updated ArticDive maven repository url Fixed #3 Removed unnecessary blank line --- pom.xml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index f22df162..3f76f26d 100644 --- a/pom.xml +++ b/pom.xml @@ -13,9 +13,8 @@ Articdive-repo - https://ci.articdive.de/plugin/repository/everything/ + https://nexus.articdive.de/repository/maven-snapshots/ - Sonatype-public SnakeYAML repository