Class AdaptedObjectSerializer<T,​A>

java.lang.Object
org.eclipse.yasson.internal.serializer.AdaptedObjectSerializer<T,​A>
Type Parameters:
T - source type
A - adapted type
All Implemented Interfaces:
javax.json.bind.serializer.JsonbSerializer<T>, RuntimeTypeInfo, CurrentItem<T>

public class AdaptedObjectSerializer<T,​A> extends Object implements CurrentItem<T>, javax.json.bind.serializer.JsonbSerializer<T>
Serializer for adapted object. Converts object using components first, than serializes result with standard process.
  • Constructor Details

    • AdaptedObjectSerializer

      public AdaptedObjectSerializer(ClassModel classModel, AdapterBinding adapter)
      Creates AdapterObjectSerializer.
      Parameters:
      classModel - Class model.
      adapter - Adapter.
  • Method Details

    • serialize

      public void serialize(T obj, javax.json.stream.JsonGenerator generator, javax.json.bind.serializer.SerializationContext ctx)
      Specified by:
      serialize in interface javax.json.bind.serializer.JsonbSerializer<T>
    • getClassModel

      public ClassModel getClassModel()
      Description copied from interface: CurrentItem
      Class model containing property for this item.
      Specified by:
      getClassModel in interface CurrentItem<T>
      Returns:
      Class model.
    • getWrapper

      public CurrentItem<?> getWrapper()
      Description copied from interface: CurrentItem
      Item wrapper. Null only in case of a root item.
      Specified by:
      getWrapper in interface CurrentItem<T>
      Specified by:
      getWrapper in interface RuntimeTypeInfo
      Returns:
      Wrapper item of this item.
    • getRuntimeType

      public Type getRuntimeType()
      Description copied from interface: RuntimeTypeInfo
      Returns a runtime type. It can be a class, ParameterizedType or TypeVariable.
      Specified by:
      getRuntimeType in interface RuntimeTypeInfo
      Returns:
      Runtime type or null if not defined.