Class Excluder

  • All Implemented Interfaces:
    TypeAdapterFactory, java.lang.Cloneable

    public final class Excluder
    extends java.lang.Object
    implements TypeAdapterFactory, java.lang.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 Detail

      • DEFAULT

        public static final Excluder DEFAULT
    • Constructor Detail

      • Excluder

        public Excluder()
    • Method Detail

      • clone

        protected Excluder clone()
        Overrides:
        clone in class java.lang.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)
      • excludeField

        public boolean excludeField​(java.lang.reflect.Field field,
                                    boolean serialize)
      • excludeClass

        public boolean excludeClass​(java.lang.Class<?> clazz,
                                    boolean serialize)