-
- All Implemented Interfaces:
public final class EffectSerializerSerialize Alchemist effect groups from/to file in human readable format (JSON).
This class can be considered a clean boundary between Google Gson library and the needs of this project, providing methods to serialize and deserialize from JSON files instances of EffectGroup.
The GSON object used for serialization is statically updated at runtime with all available
TypeAdaptersandRuntimeTypeAdapter.
-
-
Field Summary
Fields Modifier and Type Field Description public final static StringDEFAULT_EXTENSIONpublic final static CharsetDEFAULT_CHARSET
-
Method Summary
Modifier and Type Method Description static <P extends Position2D<out P>> EffectFX<P>effectFromFile(File effectFile)Get an Effect from the specified file. static <P extends Position2D<out P>> EffectFX<P>effectFromResources(String resource)Get an Effect from the specified resource file. static <P extends Position2D<out P>> voideffectToFile(File effectFile, EffectFX<P> effect)Write the given EffectFX to the destination file. static <P extends Position2D<out P>> EffectGroup<P>effectsFromFile(File effectFile)Get an EffectGroup from the specified file. static <P extends Position2D<out P>> EffectGroup<P>effectsFromResources(String resource)Get an EffectGroup from the specified resource file. static <P extends Position2D<out P>> voideffectsToFile(File effectFile, EffectGroup<P> effects)Write the given EffectGroup to the destination file. static <P extends Position2D<out P>> List<EffectGroup<P>>effectGroupsFromFile(File effectFile)Get a list of EffectGroup from the specified file. static <P extends Position2D<out P>> List<EffectGroup<P>>effectGroupsFromResources(String resource)Get a list of EffectGroup from the specified resource file. static <P extends Position2D<out P>> voideffectGroupsToFile(File effectFile, List<EffectGroup<P>> effects)Write the given list of EffectGroups to the destination file. static GsongetGSON()Returns the internal static instance of Gson object used for serialization. -
-
Method Detail
-
effectFromFile
static <P extends Position2D<out P>> EffectFX<P> effectFromFile(File effectFile)
Get an Effect from the specified file. It tries to deserialize a JSON file.
- Parameters:
effectFile- Source file
-
effectFromResources
static <P extends Position2D<out P>> EffectFX<P> effectFromResources(String resource)
Get an Effect from the specified resource file. It tries to deserialize a JSON file.
- Parameters:
resource- resource file
-
effectToFile
static <P extends Position2D<out P>> void effectToFile(File effectFile, EffectFX<P> effect)
Write the given EffectFX to the destination file.
- Parameters:
effectFile- Destination fileeffect- Effect
-
effectsFromFile
static <P extends Position2D<out P>> EffectGroup<P> effectsFromFile(File effectFile)
Get an EffectGroup from the specified file. It tries to deserialize a JSON file.
- Parameters:
effectFile- Source file
-
effectsFromResources
static <P extends Position2D<out P>> EffectGroup<P> effectsFromResources(String resource)
Get an EffectGroup from the specified resource file. It tries to deserialize a JSON file.
- Parameters:
resource- resource file
-
effectsToFile
static <P extends Position2D<out P>> void effectsToFile(File effectFile, EffectGroup<P> effects)
Write the given EffectGroup to the destination file.
- Parameters:
effectFile- Destination fileeffects- Group of effects
-
effectGroupsFromFile
static <P extends Position2D<out P>> List<EffectGroup<P>> effectGroupsFromFile(File effectFile)
Get a list of EffectGroup from the specified file. It tries to deserialize a JSON file.
- Parameters:
effectFile- Source file
-
effectGroupsFromResources
static <P extends Position2D<out P>> List<EffectGroup<P>> effectGroupsFromResources(String resource)
Get a list of EffectGroup from the specified resource file. It tries to deserialize a JSON file.
- Parameters:
resource- resource file
-
effectGroupsToFile
static <P extends Position2D<out P>> void effectGroupsToFile(File effectFile, List<EffectGroup<P>> effects)
Write the given list of EffectGroups to the destination file.
- Parameters:
effectFile- Destination fileeffects- List of group of effects
-
getGSON
@Contract(pure = true)@TestOnly() static Gson getGSON()
Returns the internal static instance of Gson object used for serialization. It includes all needed com.google.gson.TypeAdapters for Effects and Properties serialization.
Useful for serialize related objects not directly managed by this class.
-
-
-
-