Class AbstractSerializerBuilder<T extends AbstractSerializerBuilder>

java.lang.Object
org.eclipse.yasson.internal.serializer.AbstractSerializerBuilder<T>
Type Parameters:
T - serialization builder type
Direct Known Subclasses:
DeserializerBuilder, SerializerBuilder

public class AbstractSerializerBuilder<T extends AbstractSerializerBuilder> extends Object
Base class for serializer builders.
  • Constructor Details

    • AbstractSerializerBuilder

      public AbstractSerializerBuilder(JsonbContext jsonbContext)
      Crates a builder.
      Parameters:
      jsonbContext - Not null.
  • Method Details

    • withWrapper

      public T withWrapper(CurrentItem<?> wrapper)
      Wrapper item for this item.
      Parameters:
      wrapper - not null.
      Returns:
      Builder instance for call chaining.
    • withCustomization

      public T withCustomization(Customization customization)
      Customization of the class.
      Parameters:
      customization - Class customization
      Returns:
      Builder instance for call chaining.
    • withClassModel

      public T withClassModel(ClassModel classModel)
      Class model for this item.
      Parameters:
      classModel - class model
      Returns:
      Builder instance for call chaining.
    • withRuntimeType

      public T withRuntimeType(Type runtimeType)
      Runtime type for this item.
      Parameters:
      runtimeType - runtime type
      Returns:
      Builder instance for call chaining.
    • getClassModel

      protected ClassModel getClassModel(Class<?> rawType)
      Gets or load class model for a class an its superclasses.
      Parameters:
      rawType - Class to get model for.
      Returns:
      Class model.
    • getWrapper

      public CurrentItem<?> getWrapper()
      Wrapper item for this item.
      Returns:
      Wrapper item.
    • getClassModel

      public ClassModel getClassModel()
      Model of a class representing current item and instance (if any). Known collection classes doesn't need such a model.
      Returns:
      model of a class
    • getRuntimeType

      public Type getRuntimeType()
      Resolved runtime type for instance in case of TypeVariable or WildcardType. Otherwise provided type in type field, or type of field model.
      Returns:
      runtime type
    • withType

      public T withType(Type type)
      Type for underlying instance to be created from. In case of type variable or wildcard, will be resolved recursively from parent items.
      Parameters:
      type - type of instance not null
      Returns:
      builder instance for call chaining
    • getJsonbContext

      public JsonbContext getJsonbContext()
      Jsonb runtime context.
      Returns:
      jsonb context
    • getCustomization

      public Customization getCustomization()
      Type customization.
      Returns:
      customization
    • getGenericType

      public Type getGenericType()
      Generic type of the item.
      Returns:
      generic type