diff --git a/common/src/main/java/com/hibiscusmc/hmccosmetics/config/WardrobeSettings.java b/common/src/main/java/com/hibiscusmc/hmccosmetics/config/WardrobeSettings.java index 109b6925..291b2371 100644 --- a/common/src/main/java/com/hibiscusmc/hmccosmetics/config/WardrobeSettings.java +++ b/common/src/main/java/com/hibiscusmc/hmccosmetics/config/WardrobeSettings.java @@ -2,7 +2,6 @@ package com.hibiscusmc.hmccosmetics.config; import com.hibiscusmc.hmccosmetics.HMCCosmeticsPlugin; import com.hibiscusmc.hmccosmetics.util.MessagesUtil; -import com.hibiscusmc.hmccosmetics.util.misc.Utils; import lombok.Getter; import me.lojosho.hibiscuscommons.config.serializer.LocationSerializer; import me.lojosho.shaded.configurate.ConfigurationNode; @@ -170,7 +169,8 @@ public class WardrobeSettings { MessagesUtil.sendDebugMessages("Wardrobe Location: " + npcLocation); Location viewerLocation = LocationSerializer.INSTANCE.deserialize(Location.class, wardrobesNode.node(VIEWER_LOCATION_PATH)); MessagesUtil.sendDebugMessages("Viewer Location: " + viewerLocation); - Location leaveLocation = Utils.replaceIfNull(LocationSerializer.INSTANCE.deserialize(Location.class, wardrobesNode.node(LEAVE_LOCATION_PATH)), viewerLocation); + Location leaveLocation = LocationSerializer.INSTANCE.deserialize(Location.class, wardrobesNode.node(LEAVE_LOCATION_PATH)); + if (leaveLocation == null) leaveLocation = viewerLocation; MessagesUtil.sendDebugMessages("Leave Location: " + leaveLocation); WardrobeLocation wardrobeLocation = new WardrobeLocation(npcLocation, viewerLocation, leaveLocation); diff --git a/common/src/main/java/com/hibiscusmc/hmccosmetics/util/misc/Utils.java b/common/src/main/java/com/hibiscusmc/hmccosmetics/util/misc/Utils.java deleted file mode 100644 index 38309bcc..00000000 --- a/common/src/main/java/com/hibiscusmc/hmccosmetics/util/misc/Utils.java +++ /dev/null @@ -1,118 +0,0 @@ -package com.hibiscusmc.hmccosmetics.util.misc; - -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -import java.util.Optional; -import java.util.function.Consumer; -import java.util.function.Function; -import java.util.function.Predicate; - -public class Utils { - - /** - * @param original Object to be checked if null - * @param replacement Object returned if original is null - * @return original if not null, otherwise replacement - */ - - public static T replaceIfNull(final @Nullable T original, final @NotNull T replacement) { - return replaceIfNull(original, replacement, t -> { - }); - } - - @SafeVarargs - public static T replaceIf(final @Nullable T original, final T replacement, final @Nullable T... checks) { - for (final T check : checks) { - if (original == check) return replacement; - } - return original; - } - - public static T replaceIf(final @Nullable T original, final T replacement, final @NotNull Predicate predicate) { - if (predicate.test(original)) return replacement; - return original; - } - - /** - * @param original Object to be checked if null - * @param replacement Object returned if original is null - * @param consumer accepts the original object, can be used for logging - * @return original if not null, otherwise replacement - */ - - public static T replaceIfNull(final @Nullable T original, final T replacement, - final @NotNull Consumer consumer) { - if (original == null) { - consumer.accept(replacement); - return replacement; - } - consumer.accept(original); - return original; - } - - /** - * @param t object being checked - * @param consumer accepted if t is not null - * @param type - */ - - public static void doIfNotNull(final @Nullable T t, final @NotNull Consumer consumer) { - if (t == null) { - return; - } - consumer.accept(t); - } - - /** - * @param t object being checked - * @param function applied if t is not null - * @param type - * @return - */ - - public static Optional returnIfNotNull(final @Nullable T t, - final @NotNull Function function) { - if (t == null) { - return Optional.empty(); - } - return Optional.of(function.apply(t)); - } - - /** - * @param enumAsString Enum value as a string to be parsed - * @param enumClass enum type enumAsString is to be converted to - * @param defaultEnum default value to be returned - * @return enumAsString as an enum, or default enum if it could not be parsed - */ - - public static > E stringToEnum(final @NotNull String enumAsString, - final @NotNull Class enumClass, - E defaultEnum) { - return stringToEnum(enumAsString, enumClass, defaultEnum, e -> { - }); - } - - /** - * @param enumAsString Enum value as a string to be parsed - * @param enumClass enum type enumAsString is to be converted to - * @param defaultEnum default value to be returned - * @param consumer accepts the returned enum, can be used for logging - * @return enumAsString as an enum, or default enum if it could not be parsed - */ - - public static > E stringToEnum(final @NotNull String enumAsString, - @NotNull final Class enumClass, - final E defaultEnum, - final @NotNull Consumer consumer) { - try { - final E value = Enum.valueOf(enumClass, enumAsString); - consumer.accept(value); - return value; - } catch (final IllegalArgumentException exception) { - consumer.accept(defaultEnum); - return defaultEnum; - } - } - -} \ No newline at end of file