Class UniversalJsonAdapter<R>

java.lang.Object
pro.gravit.utils.UniversalJsonAdapter<R>
Type Parameters:
R - Class or interface type
All Implemented Interfaces:
com.google.gson.JsonDeserializer<R>, com.google.gson.JsonSerializer<R>

public class UniversalJsonAdapter<R> extends Object implements com.google.gson.JsonSerializer<R>, com.google.gson.JsonDeserializer<R>
An adapter that uses ProviderMap to serialize and deserialize a group of similar objects
See Also:
  • Field Details

    • providerMap

      public final ProviderMap<R> providerMap
    • name

      public final String name
    • PROP_NAME

      public final String PROP_NAME
    • defaultClass

      public Class<? extends R> defaultClass
  • Constructor Details

    • UniversalJsonAdapter

      public UniversalJsonAdapter(ProviderMap<R> providerMap)
    • UniversalJsonAdapter

      public UniversalJsonAdapter(ProviderMap<R> providerMap, String PROP_NAME)
    • UniversalJsonAdapter

      public UniversalJsonAdapter(ProviderMap<R> providerMap, String name, Class<? extends R> defaultClass)
    • UniversalJsonAdapter

      public UniversalJsonAdapter(ProviderMap<R> providerMap, Class<? extends R> defaultClass)
    • UniversalJsonAdapter

      public UniversalJsonAdapter(ProviderMap<R> providerMap, String name, String PROP_NAME, Class<? extends R> defaultClass)
  • Method Details

    • deserialize

      public R deserialize(com.google.gson.JsonElement json, Type typeOfT, com.google.gson.JsonDeserializationContext context) throws com.google.gson.JsonParseException
      Specified by:
      deserialize in interface com.google.gson.JsonDeserializer<R>
      Throws:
      com.google.gson.JsonParseException
    • serialize

      public com.google.gson.JsonElement serialize(R src, Type typeOfSrc, com.google.gson.JsonSerializationContext context)
      Specified by:
      serialize in interface com.google.gson.JsonSerializer<R>