Package cc.carm.lib.bukkit.configuration
Class BukkitJSONSerializer
- java.lang.Object
-
- cc.carm.lib.bukkit.configuration.BukkitJSONSerializer
-
public class BukkitJSONSerializer extends java.lang.ObjectBukkitJSONSerializer, a lightweight JSON serializer forConfigurationSerializableobjects.- serialize by
serializeToJSON(ConfigurationSerializable) - deserialize by
deserializeJSON(String, Class, ConfigurationSerializable)
- Since:
- 1.0.0
- Author:
- CarmJos
- serialize by
-
-
Field Summary
Fields Modifier and Type Field Description protected @NotNull com.google.gson.Gsongsonstatic BukkitJSONSerializerINSTANCEprotected @NotNull com.google.gson.JsonParserparserstatic java.lang.StringTYPE_KEY
-
Constructor Summary
Constructors Constructor Description BukkitJSONSerializer(@NotNull com.google.gson.Gson gson, @NotNull com.google.gson.JsonParser parser)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static @NotNull BukkitJSONSerializercreate()static @NotNull BukkitJSONSerializercreate(@NotNull com.google.gson.Gson gson)static @NotNull BukkitJSONSerializercreate(@NotNull com.google.gson.Gson gson, @NotNull com.google.gson.JsonParser parser)java.lang.ObjectdeserializeJSON(@Nullable java.lang.String json)Deserializes aConfigurationSerializableobject from JSON.<T extends org.bukkit.configuration.serialization.ConfigurationSerializable>
TdeserializeJSON(@Nullable java.lang.String json, @NotNull java.lang.Class<T> typeClazz)Deserializes aConfigurationSerializableobject from Map.<T extends org.bukkit.configuration.serialization.ConfigurationSerializable>
TdeserializeJSON(@Nullable java.lang.String json, @NotNull java.lang.Class<T> typeClazz, T defaultValue)Deserializes aConfigurationSerializableobject from Map.org.bukkit.configuration.serialization.ConfigurationSerializabledeserializeJSON(@Nullable java.lang.String json, @Nullable org.bukkit.configuration.serialization.ConfigurationSerializable defaultValue)Deserializes aConfigurationSerializableobject from JSON.static @NotNull BukkitJSONSerializerget()protected java.util.Map<java.lang.String,java.lang.Object>jsonToMap(com.google.gson.JsonObject object)protected java.util.Map<java.lang.String,java.lang.Object>jsonToMap(java.lang.String json)protected java.util.Map<java.lang.String,java.lang.Object>parseMap(java.util.Map<?,?> map)<T extends org.bukkit.configuration.serialization.ConfigurationSerializable>
java.lang.StringserializeToJSON(T value)Serializes aConfigurationSerializableobject to JSON.<T extends org.bukkit.configuration.serialization.ConfigurationSerializable>
java.util.Map<java.lang.String,java.lang.Object>serializeToMap(T value)Serializes aConfigurationSerializableobject to Map.
-
-
-
Field Detail
-
TYPE_KEY
public static final java.lang.String TYPE_KEY
- See Also:
- Constant Field Values
-
INSTANCE
public static final BukkitJSONSerializer INSTANCE
-
gson
@NotNull protected final @NotNull com.google.gson.Gson gson
-
parser
@NotNull protected final @NotNull com.google.gson.JsonParser parser
-
-
Method Detail
-
create
@NotNull public static @NotNull BukkitJSONSerializer create()
-
create
@NotNull public static @NotNull BukkitJSONSerializer create(@NotNull @NotNull com.google.gson.Gson gson)
-
create
@NotNull public static @NotNull BukkitJSONSerializer create(@NotNull @NotNull com.google.gson.Gson gson, @NotNull @NotNull com.google.gson.JsonParser parser)
-
get
@NotNull public static @NotNull BukkitJSONSerializer get()
-
serializeToMap
public <T extends org.bukkit.configuration.serialization.ConfigurationSerializable> java.util.Map<java.lang.String,java.lang.Object> serializeToMap(T value)
Serializes aConfigurationSerializableobject to Map.- Type Parameters:
T-ConfigurationSerializableobject type.- Parameters:
value- object to serialize.- Returns:
- Map containing serialized data
-
serializeToJSON
public <T extends org.bukkit.configuration.serialization.ConfigurationSerializable> java.lang.String serializeToJSON(T value)
Serializes aConfigurationSerializableobject to JSON.- Type Parameters:
T-ConfigurationSerializableobject type.- Parameters:
value- object to serialize.- Returns:
- JSON string containing serialized data.
-
deserializeJSON
@Contract("null->null") public java.lang.Object deserializeJSON(@Nullable @Nullable java.lang.String json)Deserializes aConfigurationSerializableobject from JSON.- Parameters:
json- JSON string to deserialize.- Returns:
- Deserialized object.
-
deserializeJSON
@Contract("_,!null->!null; null,null->null") public org.bukkit.configuration.serialization.ConfigurationSerializable deserializeJSON(@Nullable @Nullable java.lang.String json, @Nullable @Nullable org.bukkit.configuration.serialization.ConfigurationSerializable defaultValue)Deserializes aConfigurationSerializableobject from JSON.- Parameters:
json- JSON string to deserialize.defaultValue- default value to return if json is null or failed to deserialize.- Returns:
- Deserialized object.
-
deserializeJSON
@Nullable public <T extends org.bukkit.configuration.serialization.ConfigurationSerializable> T deserializeJSON(@Nullable @Nullable java.lang.String json, @NotNull @NotNull java.lang.Class<T> typeClazz)Deserializes aConfigurationSerializableobject from Map.- Type Parameters:
T-ConfigurationSerializableobject type.- Parameters:
json- JSON string to deserialize.typeClazz- type of object.- Returns:
- Deserialized object.
-
deserializeJSON
@Contract("_,_,!null->!null; null,_,null->null") public <T extends org.bukkit.configuration.serialization.ConfigurationSerializable> T deserializeJSON(@Nullable @Nullable java.lang.String json, @NotNull @NotNull java.lang.Class<T> typeClazz, @Nullable T defaultValue)Deserializes aConfigurationSerializableobject from Map.- Type Parameters:
T-ConfigurationSerializableobject type.- Parameters:
json- JSON string to deserialize.typeClazz- type of object.defaultValue- default value to return if json is null or failed to deserialize.- Returns:
- Deserialized object.
-
jsonToMap
protected java.util.Map<java.lang.String,java.lang.Object> jsonToMap(java.lang.String json)
-
jsonToMap
protected java.util.Map<java.lang.String,java.lang.Object> jsonToMap(com.google.gson.JsonObject object)
-
parseMap
protected java.util.Map<java.lang.String,java.lang.Object> parseMap(java.util.Map<?,?> map)
-
-