Class VariantBuilder

Object
org.apache.spark.types.variant.VariantBuilder

public class VariantBuilder extends Object
Build variant value and metadata by parsing JSON values.
  • Constructor Details

    • VariantBuilder

      public VariantBuilder()
  • Method Details

    • parseJson

      public static Variant parseJson(String json) throws IOException
      Parse a JSON string as a Variant value.
      Throws:
      VariantSizeLimitException - if the resulting variant value or metadata would exceed the SIZE_LIMIT (for example, this could be a maximum of 16 MiB).
      IOException - if any JSON parsing error happens.
    • parseJson

      public static Variant parseJson(com.fasterxml.jackson.core.JsonParser parser) throws IOException
      Similar parseJson(String), but takes a JSON parser instead of string input.
      Throws:
      IOException
    • result

      public Variant result()
    • appendString

      public void appendString(String str)
    • appendNull

      public void appendNull()
    • appendBoolean

      public void appendBoolean(boolean b)
    • appendLong

      public void appendLong(long l)
    • appendDouble

      public void appendDouble(double d)
    • appendDecimal

      public void appendDecimal(BigDecimal d)
    • appendDate

      public void appendDate(int daysSinceEpoch)
    • appendTimestamp

      public void appendTimestamp(long microsSinceEpoch)
    • appendTimestampNtz

      public void appendTimestampNtz(long microsSinceEpoch)
    • appendFloat

      public void appendFloat(float f)
    • appendBinary

      public void appendBinary(byte[] binary)
    • addKey

      public int addKey(String key)
    • getWritePos

      public int getWritePos()
    • finishWritingObject

      public void finishWritingObject(int start, ArrayList<VariantBuilder.FieldEntry> fields)
    • finishWritingArray

      public void finishWritingArray(int start, ArrayList<Integer> offsets)
    • appendVariant

      public void appendVariant(Variant v)