From a91d039dd268711803eebc2140afb96d768e2c38 Mon Sep 17 00:00:00 2001 From: ineanto Date: Sat, 1 Jul 2023 18:01:58 +0200 Subject: [PATCH] refactor: remove generic from actionresult --- .../atnrch/nicko/disguise/ActionResult.java | 25 ++++++++----------- .../nicko/disguise/AppearanceManager.java | 22 ++++++++-------- .../nicko/event/PlayerJoinListener.java | 2 +- .../nicko/event/PlayerQuitListener.java | 2 +- .../java/xyz/atnrch/nicko/storage/Cache.java | 2 +- .../atnrch/nicko/storage/PlayerDataStore.java | 8 +++--- .../xyz/atnrch/nicko/storage/Storage.java | 2 +- .../nicko/storage/json/JSONStorage.java | 8 +++--- .../atnrch/nicko/storage/map/MapCache.java | 4 +-- .../nicko/storage/redis/RedisCache.java | 4 +-- .../atnrch/nicko/storage/sql/SQLStorage.java | 8 +++--- 11 files changed, 42 insertions(+), 45 deletions(-) diff --git a/src/main/java/xyz/atnrch/nicko/disguise/ActionResult.java b/src/main/java/xyz/atnrch/nicko/disguise/ActionResult.java index 7906963..a3ed415 100644 --- a/src/main/java/xyz/atnrch/nicko/disguise/ActionResult.java +++ b/src/main/java/xyz/atnrch/nicko/disguise/ActionResult.java @@ -1,27 +1,24 @@ package xyz.atnrch.nicko.disguise; -public class ActionResult { +public class ActionResult { private final String errorKey; private boolean error = false; - private R result; - public ActionResult() { + public static ActionResult ok() { + return new ActionResult(); + } + + public static ActionResult error(String errorMessage) { + return new ActionResult(errorMessage); + } + + private ActionResult() { this.errorKey = null; } - public ActionResult(String errorMessage) { + private ActionResult(String errorMessage) { this.errorKey = errorMessage; this.error = true; - this.result = null; - } - - public ActionResult(R result) { - this.errorKey = null; - this.result = result; - } - - public R getResult() { - return result; } public boolean isError() { diff --git a/src/main/java/xyz/atnrch/nicko/disguise/AppearanceManager.java b/src/main/java/xyz/atnrch/nicko/disguise/AppearanceManager.java index 839aeb9..ca541a2 100644 --- a/src/main/java/xyz/atnrch/nicko/disguise/AppearanceManager.java +++ b/src/main/java/xyz/atnrch/nicko/disguise/AppearanceManager.java @@ -82,11 +82,11 @@ public class AppearanceManager { updatePlayer(true, false); } - public ActionResult reset() { + public ActionResult reset() { final String defaultName = nameStore.getStoredName(player); this.profile.setName(defaultName); this.profile.setSkin(defaultName); - final ActionResult actionResult = updatePlayer(true, true); + final ActionResult actionResult = updatePlayer(true, true); if (!actionResult.isError()) { this.profile.setSkin(null); this.profile.setName(null); @@ -94,11 +94,11 @@ public class AppearanceManager { return actionResult; } - public ActionResult updatePlayer(boolean skinChange, boolean reset) { + public ActionResult updatePlayer(boolean skinChange, boolean reset) { final String displayName = profile.getName() == null ? player.getName() : profile.getName(); final WrappedGameProfile gameProfile = WrappedGameProfile.fromPlayer(player).withName(displayName); - final ActionResult result = updateGameProfileSkin(gameProfile, skinChange, reset); + final ActionResult result = updateGameProfileSkin(gameProfile, skinChange, reset); final boolean wasFlying = player.isFlying(); if (!result.isError()) { updateMetadata(); @@ -109,7 +109,7 @@ public class AppearanceManager { player.teleport(player.getLocation(), PlayerTeleportEvent.TeleportCause.PLUGIN); player.setFlying(wasFlying); player.updateInventory(); - return new ActionResult<>(); + return ActionResult.ok(); } public void updateOthers() { @@ -126,7 +126,7 @@ public class AppearanceManager { } - private ActionResult updateGameProfileSkin(WrappedGameProfile gameProfile, boolean skinChange, boolean reset) { + private ActionResult updateGameProfileSkin(WrappedGameProfile gameProfile, boolean skinChange, boolean reset) { final boolean changeOnlyName = profile.getSkin() != null && !profile.getSkin().equalsIgnoreCase(player.getName()); if (skinChange || changeOnlyName) { @@ -142,17 +142,17 @@ public class AppearanceManager { properties.get("textures").clear(); properties.put("textures", new WrappedSignedProperty("textures", skinResult.getValue(), skinResult.getSignature())); } else { - return new ActionResult<>(I18NDict.Error.MOJANG_SKIN); + return ActionResult.error(I18NDict.Error.MOJANG_SKIN); } } - return new ActionResult<>(); + return ActionResult.ok(); } catch (ExecutionException e) { - return new ActionResult<>(I18NDict.Error.CACHE); + return ActionResult.error(I18NDict.Error.CACHE); } catch (IOException e) { - return new ActionResult<>(I18NDict.Error.MOJANG_NAME); + return ActionResult.error(I18NDict.Error.MOJANG_NAME); } } - return new ActionResult<>(); + return ActionResult.ok(); } private void updateMetadata() { diff --git a/src/main/java/xyz/atnrch/nicko/event/PlayerJoinListener.java b/src/main/java/xyz/atnrch/nicko/event/PlayerJoinListener.java index 1d09488..c2a05a3 100644 --- a/src/main/java/xyz/atnrch/nicko/event/PlayerJoinListener.java +++ b/src/main/java/xyz/atnrch/nicko/event/PlayerJoinListener.java @@ -25,7 +25,7 @@ public class PlayerJoinListener implements Listener { Bukkit.getScheduler().runTaskLater(instance, () -> { final AppearanceManager appearanceManager = AppearanceManager.get(player); if (appearanceManager.hasData()) { - final ActionResult actionResult = appearanceManager.updatePlayer(appearanceManager.needsASkinChange()); + final ActionResult actionResult = appearanceManager.updatePlayer(appearanceManager.needsASkinChange(), true); if (!actionResult.isError()) { player.sendMessage(i18n.translate(I18NDict.Event.PreviousSkin.SUCCESS)); } else { diff --git a/src/main/java/xyz/atnrch/nicko/event/PlayerQuitListener.java b/src/main/java/xyz/atnrch/nicko/event/PlayerQuitListener.java index 3f89078..20fa8d5 100644 --- a/src/main/java/xyz/atnrch/nicko/event/PlayerQuitListener.java +++ b/src/main/java/xyz/atnrch/nicko/event/PlayerQuitListener.java @@ -11,7 +11,7 @@ public class PlayerQuitListener implements Listener { @EventHandler public void onPlayerQuit(PlayerQuitEvent event) { final Player player = event.getPlayer(); - final ActionResult result = NickoBukkit.getInstance().getDataStore().saveData(player); + final ActionResult result = NickoBukkit.getInstance().getDataStore().saveData(player); if (result.isError()) { NickoBukkit.getInstance().getLogger().warning("Failed to save data for " + player.getName()); } diff --git a/src/main/java/xyz/atnrch/nicko/storage/Cache.java b/src/main/java/xyz/atnrch/nicko/storage/Cache.java index 7b818ae..65b8000 100644 --- a/src/main/java/xyz/atnrch/nicko/storage/Cache.java +++ b/src/main/java/xyz/atnrch/nicko/storage/Cache.java @@ -11,7 +11,7 @@ public abstract class Cache { public abstract CacheProvider getProvider(); - public abstract ActionResult cache(UUID uuid, NickoProfile profile); + public abstract ActionResult cache(UUID uuid, NickoProfile profile); public abstract boolean isCached(UUID uuid); diff --git a/src/main/java/xyz/atnrch/nicko/storage/PlayerDataStore.java b/src/main/java/xyz/atnrch/nicko/storage/PlayerDataStore.java index 2cceb9f..640816a 100644 --- a/src/main/java/xyz/atnrch/nicko/storage/PlayerDataStore.java +++ b/src/main/java/xyz/atnrch/nicko/storage/PlayerDataStore.java @@ -62,11 +62,11 @@ public class PlayerDataStore { } } - public ActionResult saveData(Player player) { - if (storage.isError()) return new ActionResult<>(I18NDict.Error.GENERIC); - if (!cache.isCached(player.getUniqueId())) return new ActionResult<>(I18NDict.Error.GENERIC); + public ActionResult saveData(Player player) { + if (storage.isError()) return ActionResult.error(I18NDict.Error.GENERIC); + if (!cache.isCached(player.getUniqueId())) return ActionResult.error(I18NDict.Error.GENERIC); if (!cache.retrieve(player.getUniqueId()).isPresent()) - return new ActionResult<>(I18NDict.Error.GENERIC); + return ActionResult.error(I18NDict.Error.GENERIC); // TODO (Ineanto, 5/20/23): Remove value from cache //profiles.remove(player.getUniqueId()); diff --git a/src/main/java/xyz/atnrch/nicko/storage/Storage.java b/src/main/java/xyz/atnrch/nicko/storage/Storage.java index 830721b..d50970f 100644 --- a/src/main/java/xyz/atnrch/nicko/storage/Storage.java +++ b/src/main/java/xyz/atnrch/nicko/storage/Storage.java @@ -11,7 +11,7 @@ public abstract class Storage { public abstract StorageProvider getProvider(); - public abstract ActionResult store(UUID uuid, NickoProfile profile); + public abstract ActionResult store(UUID uuid, NickoProfile profile); public abstract boolean isStored(UUID uuid); diff --git a/src/main/java/xyz/atnrch/nicko/storage/json/JSONStorage.java b/src/main/java/xyz/atnrch/nicko/storage/json/JSONStorage.java index cdd7537..00763e8 100644 --- a/src/main/java/xyz/atnrch/nicko/storage/json/JSONStorage.java +++ b/src/main/java/xyz/atnrch/nicko/storage/json/JSONStorage.java @@ -30,7 +30,7 @@ public class JSONStorage extends Storage { } @Override - public ActionResult store(UUID uuid, NickoProfile profile) { + public ActionResult store(UUID uuid, NickoProfile profile) { final String profileToJson = gson.toJson(profile); final File file = new File(directory, uuid.toString() + ".json"); @@ -42,15 +42,15 @@ public class JSONStorage extends Storage { } } catch (IOException e) { logger.warning("Could not write to file."); - return new ActionResult<>(I18NDict.Error.JSON_ERROR); + return ActionResult.error(I18NDict.Error.JSON_ERROR); } } } catch (IOException e) { logger.warning("Could not create file."); - return new ActionResult<>(I18NDict.Error.JSON_ERROR); + return ActionResult.error(I18NDict.Error.JSON_ERROR); } - return new ActionResult<>(); + return ActionResult.ok(); } @Override diff --git a/src/main/java/xyz/atnrch/nicko/storage/map/MapCache.java b/src/main/java/xyz/atnrch/nicko/storage/map/MapCache.java index 5bca4cf..a913ee6 100644 --- a/src/main/java/xyz/atnrch/nicko/storage/map/MapCache.java +++ b/src/main/java/xyz/atnrch/nicko/storage/map/MapCache.java @@ -21,10 +21,10 @@ public class MapCache extends Cache { } @Override - public ActionResult cache(UUID uuid, NickoProfile profile) { + public ActionResult cache(UUID uuid, NickoProfile profile) { final HashMap profiles = provider.getMap(); profiles.put(uuid, profile); - return new ActionResult<>(); + return ActionResult.ok(); } @Override diff --git a/src/main/java/xyz/atnrch/nicko/storage/redis/RedisCache.java b/src/main/java/xyz/atnrch/nicko/storage/redis/RedisCache.java index 68482e8..19e4924 100644 --- a/src/main/java/xyz/atnrch/nicko/storage/redis/RedisCache.java +++ b/src/main/java/xyz/atnrch/nicko/storage/redis/RedisCache.java @@ -34,10 +34,10 @@ public class RedisCache extends Cache { } @Override - public ActionResult cache(UUID uuid, NickoProfile profile) { + public ActionResult cache(UUID uuid, NickoProfile profile) { final Jedis jedis = provider.getJedis(); jedis.set("nicko:" + uuid.toString(), gson.toJson(profile)); - return new ActionResult<>(); + return ActionResult.ok(); } @Override diff --git a/src/main/java/xyz/atnrch/nicko/storage/sql/SQLStorage.java b/src/main/java/xyz/atnrch/nicko/storage/sql/SQLStorage.java index 87e03e8..069b040 100644 --- a/src/main/java/xyz/atnrch/nicko/storage/sql/SQLStorage.java +++ b/src/main/java/xyz/atnrch/nicko/storage/sql/SQLStorage.java @@ -36,18 +36,18 @@ public class SQLStorage extends Storage { } @Override - public ActionResult store(UUID uuid, NickoProfile profile) { + public ActionResult store(UUID uuid, NickoProfile profile) { final Connection connection = getProvider().getConnection(); - if (connection == null) return new ActionResult<>(I18NDict.Error.SQL_ERROR); + if (connection == null) return ActionResult.error(I18NDict.Error.SQL_ERROR); try { final PreparedStatement statement = isStored(uuid) ? getUpdateStatement(connection, uuid, profile) : getInsertStatement(connection, uuid, profile); statement.executeUpdate(); - return new ActionResult<>(); + return ActionResult.ok(); } catch (SQLException e) { logger.warning("Couldn't send SQL Request: " + e.getMessage()); - return new ActionResult<>(I18NDict.Error.SQL_ERROR); + return ActionResult.error(I18NDict.Error.SQL_ERROR); } }