Class Marshaller

java.lang.Object
org.eclipse.yasson.internal.ProcessingContext
org.eclipse.yasson.internal.Marshaller
All Implemented Interfaces:
javax.json.bind.serializer.SerializationContext

public class Marshaller extends ProcessingContext implements javax.json.bind.serializer.SerializationContext
JSONB marshaller. Created each time marshalling operation called.
  • Constructor Details

    • Marshaller

      public Marshaller(JsonbContext jsonbContext, Type rootRuntimeType)
      Creates Marshaller for generation to String.
      Parameters:
      jsonbContext - Current context.
      rootRuntimeType - Type of root object.
    • Marshaller

      public Marshaller(JsonbContext jsonbContext)
      Creates Marshaller for generation to String.
      Parameters:
      jsonbContext - Current context.
  • Method Details

    • marshall

      public void marshall(Object object, javax.json.stream.JsonGenerator jsonGenerator, boolean close)
      Marshals given object to provided Writer or OutputStream.
      Parameters:
      object - object to marshall
      jsonGenerator - generator to use
      close - if generator should be closed
    • marshall

      public void marshall(Object object, javax.json.stream.JsonGenerator jsonGenerator)
      Marshals given object to provided Writer or OutputStream. Closes the generator on completion.
      Parameters:
      object - object to marshall
      jsonGenerator - generator to use
    • marshallWithoutClose

      public void marshallWithoutClose(Object object, javax.json.stream.JsonGenerator jsonGenerator)
      Marshals given object to provided Writer or OutputStream. Leaves generator open for further interaction after completion.
      Parameters:
      object - object to marshall
      jsonGenerator - generator to use
    • serialize

      public <T> void serialize(String key, T object, javax.json.stream.JsonGenerator generator)
      Specified by:
      serialize in interface javax.json.bind.serializer.SerializationContext
    • serialize

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

      public <T> void serializeRoot(T root, javax.json.stream.JsonGenerator generator)
      Serializes root element.
      Type Parameters:
      T - Root type
      Parameters:
      root - Root.
      generator - JSON generator.