Class Excluder

java.lang.Object
com.google.gson.internal.Excluder
All Implemented Interfaces:
TypeAdapterFactory, Cloneable

public final class Excluder extends Object implements TypeAdapterFactory, Cloneable
This class selects which fields and types to omit. It is configurable, supporting version attributes Since and Until, modifiers, synthetic fields, anonymous and local classes, inner classes, and fields with the Expose annotation.

This class is a type adapter factory; types that are excluded will be adapted to null. It may delegate to another type adapter if only one direction is excluded.

Author:
Joel Leitch, Jesse Wilson
  • Field Details

    • DEFAULT

      public static final Excluder DEFAULT
  • Constructor Details

    • Excluder

      public Excluder()
  • Method Details

    • clone

      protected Excluder clone()
      Overrides:
      clone in class Object
    • withVersion

      public Excluder withVersion(double ignoreVersionsAfter)
    • withModifiers

      public Excluder withModifiers(int... modifiers)
    • disableInnerClassSerialization

      public Excluder disableInnerClassSerialization()
    • excludeFieldsWithoutExposeAnnotation

      public Excluder excludeFieldsWithoutExposeAnnotation()
    • withExclusionStrategy

      public Excluder withExclusionStrategy(ExclusionStrategy exclusionStrategy, boolean serialization, boolean deserialization)
    • create

      public <T> TypeAdapter<T> create(Gson gson, TypeToken<T> type)
      Description copied from interface: TypeAdapterFactory
      Returns a type adapter for type, or null if this factory doesn't support type.
      Specified by:
      create in interface TypeAdapterFactory
    • excludeField

      public boolean excludeField(Field field, boolean serialize)
    • excludeClass

      public boolean excludeClass(Class<?> clazz, boolean serialize)