oracle.kv.table

## Interface RecordDef

- All Superinterfaces:
    FieldDef

      public interface RecordDef
      extends FieldDef

  RecordDef represents a simple record containing a number of field objects where the objects are named by a String name and need not be of the same type.
  Since:
    3.0

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface oracle.kv.table.FieldDef

      `FieldDef.Type`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `RecordDef` | `clone()` Perform a deep copy of this FieldDef instance.
    `FieldValue` | `getDefaultValue(String name)` Creates an instance using the default value for the named field.
    `FieldDef` | `getField(String name)` Get the named field.
    `List<String>` | `getFields()` Get the field names for the record in declaration order.
    `String` | `getName()` Get the name of the record.
    `boolean` | `isNullable(String name)` Returns true if the named field is nullable.

    - ### Methods inherited from interface oracle.kv.table.FieldDef

      `asArray, asBinary, asBoolean, asDouble, asEnum, asFixedBinary, asFloat, asInteger, asLong, asMap, asRecord, asString, createArray, createBinary, createBoolean, createDouble, createEnum, createFixedBinary, createFloat, createInteger, createLong, createMap, createRecord, createString, getDescription, getType, isArray, isBinary, isBoolean, isDouble, isEnum, isFixedBinary, isFloat, isInteger, isLong, isMap, isRecord, isString, isType, isValidIndexField, isValidKeyField`

- - ### Method Detail

    - #### getFields

          List<String> getFields()

      Get the field names for the record in declaration order.
      Returns:
        the list of field names declaration order

    - #### getField

          FieldDef getField(String name)

      Get the named field.
      Parameters:
        `name` - the name of the field to return
      Returns:
        the FieldDef for the name, or null if there is no such named field

    - #### getName

          String getName()

      Get the name of the record. Records require names even if they are nested or used as an array or map element.
      Returns:
        the name of the record

    - #### isNullable

          boolean isNullable(String name)

      Returns true if the named field is nullable.
      Parameters:
        `name` - the name of the field
      Returns:
        true if the named field is nullable

    - #### getDefaultValue

          FieldValue getDefaultValue(String name)

      Creates an instance using the default value for the named field. The return value is `FieldValue` and not a more specific type because in the case of nullable fields the default will be a null value, which is a special value that returns true for `isNullable(java.lang.String)`.
      Parameters:
        `name` - the name of the field
      Returns:
        a default value

    - #### clone

          RecordDef clone()

      Description copied from interface: `FieldDef`
      Perform a deep copy of this FieldDef instance.
      Specified by:
        `clone` in interface `FieldDef`
      Returns:
        a deep copy of this object

Copyright (c) 2011, 2014 Oracle and/or its affiliates. All rights reserved.