Package oracle.kv.table

# Interface ReturnRow

All Superinterfaces:
  `Comparable<FieldValue>`, `FieldValue`, `RecordValue`, `Row`

public interface ReturnRow extends Row
ReturnRow is used with put and delete operations to return the previous row value and version. If either property is returned the expiration time for the row will also be valid. If neither value nor version is returned expiration time is undefined.

A ReturnRow instance may be used as the `prevRecord` parameter to methods such as `TableAPI.put(Row, ReturnRow, WriteOptions)`.

For best performance, it is important to choose only the properties that are required. The store is optimized to avoid I/O when the requested properties are in cache.

Note that because both properties are optional, the version property, value property, or both properties may be null, in which case expiration time is undefined.

Since:
  3.0

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Interface
  Description
  `static enum`
  `ReturnRow.Choice`
  Specifies whether to return the row value, version, both or neither.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `ReturnRow.Choice`
  `getReturnChoice()`
  Returns the Choice of what information is returned.

  ### Methods inherited from interface java.lang.Comparable

  `compareTo`

  ### Methods inherited from interface oracle.kv.table.FieldValue

  `asArray, asBinary, asBoolean, asDouble, asEnum, asFixedBinary, asFloat, asIndexKey, asInteger, asLong, asMap, asNumber, asPrimaryKey, asRecord, asRow, asString, asTimestamp, getType, isArray, isAtomic, isBinary, isBoolean, isComplex, isDouble, isEMPTY, isEnum, isFixedBinary, isFloat, isIndexKey, isInteger, isJsonNull, isLong, isMap, isNull, isNumber, isNumeric, isPrimaryKey, isRecord, isRow, isString, isTimestamp, toJsonString`

  ### Methods inherited from interface oracle.kv.table.RecordValue

  `clear, contains, contains, copyFrom, get, get, getDefinition, getFieldName, getFieldNames, getFieldPos, getFields, isEmpty, put, put, put, put, put, put, put, put, put, put, put, put, put, put, put, put, put, put, putArray, putArray, putArray, putArray, putArray, putArray, putArrayAsJson, putArrayAsJson, putArrayAsJson, putArrayAsJson, putEnum, putEnum, putFixed, putFixed, putJson, putJson, putJson, putJson, putJsonNull, putJsonNull, putMap, putMap, putMap, putMap, putMapAsJson, putMapAsJson, putMapAsJson, putMapAsJson, putNull, putNull, putNumber, putNumber, putNumber, putNumber, putNumber, putNumber, putNumber, putNumber, putNumber, putNumber, putRecord, putRecord, putRecord, putRecord, putRecordAsJson, putRecordAsJson, putRecordAsJson, putRecordAsJson, remove, size, toString`

  ### Methods inherited from interface oracle.kv.table.Row

  `clone, createPrimaryKey, equals, getExpirationTime, getLastModificationTime, getRowMetadata, getTable, getTableVersion, getTTL, getVersion, setRowMetadata, setTTL`

- ## Method Details

  - ### getReturnChoice

    ReturnRow.Choice getReturnChoice()
    Returns the Choice of what information is returned.