RowData.FieldGetter
Constructor and Description |
---|
EnrichedRowData(RowData fixedRow,
int[] indexMapping) |
Modifier and Type | Method and Description |
---|---|
static int[] |
computeIndexMapping(List<String> producedRowFields,
List<String> mutableRowFields,
List<String> fixedRowFields)
This method computes the index mapping for
EnrichedRowData . |
boolean |
equals(Object o) |
static EnrichedRowData |
from(RowData fixedRow,
List<String> producedRowFields,
List<String> mutableRowFields,
List<String> fixedRowFields)
Creates a new
EnrichedRowData with the provided fixedRow as the immutable
static row, and uses the producedRowFields , fixedRowFields and mutableRowFields arguments to compute the indexes mapping. |
int |
getArity()
Returns the number of fields in this row.
|
ArrayData |
getArray(int pos)
Returns the array value at the given position.
|
byte[] |
getBinary(int pos)
Returns the binary value at the given position.
|
boolean |
getBoolean(int pos)
Returns the boolean value at the given position.
|
byte |
getByte(int pos)
Returns the byte value at the given position.
|
DecimalData |
getDecimal(int pos,
int precision,
int scale)
Returns the decimal value at the given position.
|
double |
getDouble(int pos)
Returns the double value at the given position.
|
float |
getFloat(int pos)
Returns the float value at the given position.
|
int |
getInt(int pos)
Returns the integer value at the given position.
|
long |
getLong(int pos)
Returns the long value at the given position.
|
MapData |
getMap(int pos)
Returns the map value at the given position.
|
<T> RawValueData<T> |
getRawValue(int pos)
Returns the raw value at the given position.
|
RowData |
getRow(int pos,
int numFields)
Returns the row value at the given position.
|
RowKind |
getRowKind()
Returns the kind of change that this row describes in a changelog.
|
short |
getShort(int pos)
Returns the short value at the given position.
|
StringData |
getString(int pos)
Returns the string value at the given position.
|
TimestampData |
getTimestamp(int pos,
int precision)
Returns the timestamp value at the given position.
|
int |
hashCode() |
boolean |
isNullAt(int pos)
Returns true if the field is null at the given position.
|
EnrichedRowData |
replaceMutableRow(RowData mutableRow)
Replaces the mutable
RowData backing this EnrichedRowData . |
void |
setRowKind(RowKind kind)
Sets the kind of change that this row describes in a changelog.
|
String |
toString() |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
createFieldGetter
public EnrichedRowData(RowData fixedRow, int[] indexMapping)
public EnrichedRowData replaceMutableRow(RowData mutableRow)
RowData
backing this EnrichedRowData
.
This method replaces the mutable row data in place and does not return a new object. This is done for performance reasons.
public int getArity()
RowData
The number does not include RowKind
. It is kept separately.
public RowKind getRowKind()
RowData
getRowKind
in interface RowData
RowKind
public void setRowKind(RowKind kind)
RowData
setRowKind
in interface RowData
RowKind
public boolean isNullAt(int pos)
RowData
public boolean getBoolean(int pos)
RowData
getBoolean
in interface RowData
public byte getByte(int pos)
RowData
public short getShort(int pos)
RowData
public int getInt(int pos)
RowData
public long getLong(int pos)
RowData
public float getFloat(int pos)
RowData
public double getDouble(int pos)
RowData
public StringData getString(int pos)
RowData
public DecimalData getDecimal(int pos, int precision, int scale)
RowData
The precision and scale are required to determine whether the decimal value was stored in
a compact representation (see DecimalData
).
getDecimal
in interface RowData
public TimestampData getTimestamp(int pos, int precision)
RowData
The precision is required to determine whether the timestamp value was stored in a compact
representation (see TimestampData
).
getTimestamp
in interface RowData
public <T> RawValueData<T> getRawValue(int pos)
RowData
getRawValue
in interface RowData
public byte[] getBinary(int pos)
RowData
public ArrayData getArray(int pos)
RowData
public MapData getMap(int pos)
RowData
public RowData getRow(int pos, int numFields)
RowData
The number of fields is required to correctly extract the row.
public static EnrichedRowData from(RowData fixedRow, List<String> producedRowFields, List<String> mutableRowFields, List<String> fixedRowFields)
EnrichedRowData
with the provided fixedRow
as the immutable
static row, and uses the producedRowFields
, fixedRowFields
and mutableRowFields
arguments to compute the indexes mapping.
The producedRowFields
should include the name of fields of the full row once
mutable and fixed rows are merged, while fixedRowFields
and mutableRowFields
should contain respectively the field names of fixed row and mutable row. All the lists are
ordered with indexes matching the position of the field in the row. As an example, for a
complete row (a, b, c)
the mutable row might be (a, c)
and the fixed row
might be (b)
public static int[] computeIndexMapping(List<String> producedRowFields, List<String> mutableRowFields, List<String> fixedRowFields)
EnrichedRowData
.from(RowData, List, List, List)
Copyright © 2014–2024 The Apache Software Foundation. All rights reserved.