org.apache.avro.generic

## Class GenericRecordBuilder

- java.lang.Object
- - org.apache.avro.data.RecordBuilderBase<GenericData.Record>
  - - org.apache.avro.generic.GenericRecordBuilder

- All Implemented Interfaces:
    RecordBuilder<GenericData.Record>

      public class GenericRecordBuilder
      extends RecordBuilderBase<GenericData.Record>

  A RecordBuilder for generic records. GenericRecordBuilder fills in default values for fields if they are not specified.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `GenericRecordBuilder(GenericData.Record other)` Creates a GenericRecordBuilder by copying an existing record instance.
    `GenericRecordBuilder(GenericRecordBuilder other)` Creates a GenericRecordBuilder by copying an existing GenericRecordBuilder.
    `GenericRecordBuilder(Schema schema)` Creates a GenericRecordBuilder for building Record instances.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `GenericData.Record` | `build()` Constructs a new instance using the values set in the RecordBuilder.
    `protected GenericRecordBuilder` | `clear(int pos)` Clears the value of the given field.
    `GenericRecordBuilder` | `clear(Schema.Field field)` Clears the value of the given field.
    `GenericRecordBuilder` | `clear(String fieldName)` Clears the value of the given field.
    `boolean` | `equals(Object obj)`
    `protected Object` | `get(int pos)` Gets the value of a field.
    `Object` | `get(Schema.Field field)` Gets the value of a field.
    `Object` | `get(String fieldName)` Gets the value of a field.
    `protected boolean` | `has(int pos)` Checks whether a field has been set.
    `boolean` | `has(Schema.Field field)` Checks whether a field has been set.
    `boolean` | `has(String fieldName)` Checks whether a field has been set.
    `int` | `hashCode()`
    `protected GenericRecordBuilder` | `set(int pos, Object value)` Sets the value of a field.
    `GenericRecordBuilder` | `set(Schema.Field field, Object value)` Sets the value of a field.
    `GenericRecordBuilder` | `set(String fieldName, Object value)` Sets the value of a field.

    - ### Methods inherited from class org.apache.avro.data.RecordBuilderBase

      `data, defaultValue, fields, fieldSetFlags, isValidValue, schema, validate`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### GenericRecordBuilder

          public GenericRecordBuilder(Schema schema)

      Creates a GenericRecordBuilder for building Record instances.
      Parameters:
        `schema` - the schema associated with the record class.

    - #### GenericRecordBuilder

          public GenericRecordBuilder(GenericRecordBuilder other)

      Creates a GenericRecordBuilder by copying an existing GenericRecordBuilder.
      Parameters:
        `other` - the GenericRecordBuilder to copy.

    - #### GenericRecordBuilder

          public GenericRecordBuilder(GenericData.Record other)

      Creates a GenericRecordBuilder by copying an existing record instance.
      Parameters:
        `other` - the record instance to copy.

  - ### Method Detail

    - #### get

          public Object get(String fieldName)

      Gets the value of a field.
      Parameters:
        `fieldName` - the name of the field to get.
      Returns:
        the value of the field with the given name, or null if not set.

    - #### get

          public Object get(Schema.Field field)

      Gets the value of a field.
      Parameters:
        `field` - the field to get.
      Returns:
        the value of the given field, or null if not set.

    - #### get

          protected Object get(int pos)

      Gets the value of a field.
      Parameters:
        `pos` - the position of the field to get.
      Returns:
        the value of the field with the given position, or null if not set.

    - #### set

          public GenericRecordBuilder set(String fieldName,
                                          Object value)

      Sets the value of a field.
      Parameters:
        `fieldName` - the name of the field to set.
        `value` - the value to set.
      Returns:
        a reference to the RecordBuilder.

    - #### set

          public GenericRecordBuilder set(Schema.Field field,
                                          Object value)

      Sets the value of a field.
      Parameters:
        `field` - the field to set.
        `value` - the value to set.
      Returns:
        a reference to the RecordBuilder.

    - #### set

          protected GenericRecordBuilder set(int pos,
                                             Object value)

      Sets the value of a field.
      Parameters:
        `pos` - the field to set.
        `value` - the value to set.
      Returns:
        a reference to the RecordBuilder.

    - #### has

          public boolean has(String fieldName)

      Checks whether a field has been set.
      Parameters:
        `fieldName` - the name of the field to check.
      Returns:
        true if the given field is non-null; false otherwise.

    - #### has

          public boolean has(Schema.Field field)

      Checks whether a field has been set.
      Parameters:
        `field` - the field to check.
      Returns:
        true if the given field is non-null; false otherwise.

    - #### has

          protected boolean has(int pos)

      Checks whether a field has been set.
      Parameters:
        `pos` - the position of the field to check.
      Returns:
        true if the given field is non-null; false otherwise.

    - #### clear

          public GenericRecordBuilder clear(String fieldName)

      Clears the value of the given field.
      Parameters:
        `fieldName` - the name of the field to clear.
      Returns:
        a reference to the RecordBuilder.

    - #### clear

          public GenericRecordBuilder clear(Schema.Field field)

      Clears the value of the given field.
      Parameters:
        `field` - the field to clear.
      Returns:
        a reference to the RecordBuilder.

    - #### clear

          protected GenericRecordBuilder clear(int pos)

      Clears the value of the given field.
      Parameters:
        `pos` - the position of the field to clear.
      Returns:
        a reference to the RecordBuilder.

    - #### build

          public GenericData.Record build()

      Description copied from interface: `RecordBuilder`
      Constructs a new instance using the values set in the RecordBuilder. If a particular value was not set and the schema defines a default value, the default value will be used.
      Returns:
        a new instance using values set in the RecordBuilder.

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `RecordBuilderBase<GenericData.Record>`

    - #### equals

          public boolean equals(Object obj)

      Overrides:
        `equals` in class `RecordBuilderBase<GenericData.Record>`

Copyright © 2009–2024 The Apache Software Foundation. All rights reserved.