package com.supaham.commons.bukkit.serializers; import com.supaham.commons.bukkit.utils.RelativeVector; import com.supaham.commons.bukkit.utils.VectorUtils; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import pluginbase.config.serializers.Serializer; import pluginbase.config.serializers.SerializerSet; public class RelativeVectorSerializer implements Serializer<RelativeVector> { @Nullable @Override public Object serialize(@Nullable RelativeVector object, @NotNull SerializerSet serializerSet) throws IllegalArgumentException { return VectorUtils.serializeRelative(object); } @Nullable @Override public RelativeVector deserialize(@Nullable Object serialized, @NotNull Class wantedType, @NotNull SerializerSet serializerSet) throws IllegalArgumentException { if (serialized == null || !(serialized instanceof String)) { return null; } return VectorUtils.deserializeRelative(serialized.toString()); } }