public abstract class AbstractStructReader implements StructReader
Base class for assisting StructReader implementations.
This class implements the majority of the StructReader
interface, leaving subclasses
to implement core data access via the getTypeNameInternal()
methods.
AbstractStructReader
guarantees that these will only be called for non-NULL
columns of a
type appropriate for the method.
Inheritance
Object >
AbstractStructReader
Constructors
AbstractStructReader()
public AbstractStructReader()
Methods
checkNonNull(int columnIndex, Object columnNameForError)
protected void checkNonNull(int columnIndex, Object columnNameForError)
Parameters |
---|
Name | Description |
columnIndex | int
|
columnNameForError | Object
|
getBigDecimal(int columnIndex)
public BigDecimal getBigDecimal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
getBigDecimal(String columnName)
public BigDecimal getBigDecimal(String columnName)
Parameter |
---|
Name | Description |
columnName | String
|
getBigDecimalInternal(int columnIndex)
protected abstract BigDecimal getBigDecimalInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
getBigDecimalList(int columnIndex)
public List<BigDecimal> getBigDecimalList(int columnIndex)
Returns the value of a non-NULL
column with type Type.array(Type.numeric())
.
Parameter |
---|
Name | Description |
columnIndex | int
|
getBigDecimalList(String columnName)
public List<BigDecimal> getBigDecimalList(String columnName)
Returns the value of a non-NULL
column with type Type.array(Type.numeric())
.
Parameter |
---|
Name | Description |
columnName | String
|
getBigDecimalListInternal(int columnIndex)
protected abstract List<BigDecimal> getBigDecimalListInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
getBoolean(int columnIndex)
public boolean getBoolean(int columnIndex)
Returns the value of a non-NULL
column with type Type#bool().
Parameter |
---|
Name | Description |
columnIndex | int
|
getBoolean(String columnName)
public boolean getBoolean(String columnName)
Returns the value of a non-NULL
column with type Type#bool().
Parameter |
---|
Name | Description |
columnName | String
|
getBooleanArray(int columnIndex)
public boolean[] getBooleanArray(int columnIndex)
Returns the value of a non-NULL
column with type Type.array(Type.bool())
.
Parameter |
---|
Name | Description |
columnIndex | int
|
getBooleanArray(String columnName)
public boolean[] getBooleanArray(String columnName)
Returns the value of a non-NULL
column with type Type.array(Type.bool())
.
Parameter |
---|
Name | Description |
columnName | String
|
getBooleanArrayInternal(int columnIndex)
protected abstract boolean[] getBooleanArrayInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
getBooleanInternal(int columnIndex)
protected abstract boolean getBooleanInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
getBooleanList(int columnIndex)
public List<Boolean> getBooleanList(int columnIndex)
Returns the value of a non-NULL
column with type Type.array(Type.bool())
.
Parameter |
---|
Name | Description |
columnIndex | int
|
getBooleanList(String columnName)
public List<Boolean> getBooleanList(String columnName)
Returns the value of a non-NULL
column with type Type.array(Type.bool())
.
Parameter |
---|
Name | Description |
columnName | String
|
getBooleanListInternal(int columnIndex)
protected abstract List<Boolean> getBooleanListInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
getBytes(int columnIndex)
public ByteArray getBytes(int columnIndex)
Returns the value of a non-NULL
column with type Type#bytes().
Parameter |
---|
Name | Description |
columnIndex | int
|
Returns |
---|
Type | Description |
com.google.cloud.ByteArray | |
getBytes(String columnName)
public ByteArray getBytes(String columnName)
Returns the value of a non-NULL
column with type Type#bytes().
Parameter |
---|
Name | Description |
columnName | String
|
Returns |
---|
Type | Description |
com.google.cloud.ByteArray | |
getBytesInternal(int columnIndex)
protected abstract ByteArray getBytesInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
Returns |
---|
Type | Description |
com.google.cloud.ByteArray | |
getBytesList(int columnIndex)
public List<ByteArray> getBytesList(int columnIndex)
Returns the value of a non-NULL
column with type Type.array(Type.bytes())
.
Parameter |
---|
Name | Description |
columnIndex | int
|
Returns |
---|
Type | Description |
List<com.google.cloud.ByteArray> | |
getBytesList(String columnName)
public List<ByteArray> getBytesList(String columnName)
Returns the value of a non-NULL
column with type Type.array(Type.bytes())
.
Parameter |
---|
Name | Description |
columnName | String
|
Returns |
---|
Type | Description |
List<com.google.cloud.ByteArray> | |
getBytesListInternal(int columnIndex)
protected abstract List<ByteArray> getBytesListInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
Returns |
---|
Type | Description |
List<com.google.cloud.ByteArray> | |
getColumnCount()
public int getColumnCount()
Returns the number of columns in the underlying data. This includes any columns with
NULL
values.
Returns |
---|
Type | Description |
int | |
getColumnIndex(String columnName)
public int getColumnIndex(String columnName)
Returns the index of the column named columnName
.
Parameter |
---|
Name | Description |
columnName | String
|
Returns |
---|
Type | Description |
int | |
getColumnType(int columnIndex)
public Type getColumnType(int columnIndex)
Returns the type of a column.
Parameter |
---|
Name | Description |
columnIndex | int
|
Returns |
---|
Type | Description |
Type | |
getColumnType(String columnName)
public Type getColumnType(String columnName)
Returns the type of a column.
Parameter |
---|
Name | Description |
columnName | String
|
Returns |
---|
Type | Description |
Type | |
getDate(int columnIndex)
public Date getDate(int columnIndex)
Returns the value of a non-NULL
column with type Type#date().
Parameter |
---|
Name | Description |
columnIndex | int
|
Returns |
---|
Type | Description |
com.google.cloud.Date | |
getDate(String columnName)
public Date getDate(String columnName)
Returns the value of a non-NULL
column with type Type#date().
Parameter |
---|
Name | Description |
columnName | String
|
Returns |
---|
Type | Description |
com.google.cloud.Date | |
getDateInternal(int columnIndex)
protected abstract Date getDateInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
Returns |
---|
Type | Description |
com.google.cloud.Date | |
getDateList(int columnIndex)
public List<Date> getDateList(int columnIndex)
Returns the value of a non-NULL
column with type Type.array(Type.date())
.
Parameter |
---|
Name | Description |
columnIndex | int
|
Returns |
---|
Type | Description |
List<com.google.cloud.Date> | |
getDateList(String columnName)
public List<Date> getDateList(String columnName)
Returns the value of a non-NULL
column with type Type.array(Type.date())
.
Parameter |
---|
Name | Description |
columnName | String
|
Returns |
---|
Type | Description |
List<com.google.cloud.Date> | |
getDateListInternal(int columnIndex)
protected abstract List<Date> getDateListInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
Returns |
---|
Type | Description |
List<com.google.cloud.Date> | |
getDouble(int columnIndex)
public double getDouble(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
getDouble(String columnName)
public double getDouble(String columnName)
Parameter |
---|
Name | Description |
columnName | String
|
getDoubleArray(int columnIndex)
public double[] getDoubleArray(int columnIndex)
Returns the value of a non-NULL
column with type Type.array(Type.float64())
.
Parameter |
---|
Name | Description |
columnIndex | int
|
Returns |
---|
Type | Description |
double[] | |
getDoubleArray(String columnName)
public double[] getDoubleArray(String columnName)
Returns the value of a non-NULL
column with type Type.array(Type.float64())
.
Parameter |
---|
Name | Description |
columnName | String
|
Returns |
---|
Type | Description |
double[] | |
getDoubleArrayInternal(int columnIndex)
protected abstract double[] getDoubleArrayInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
Returns |
---|
Type | Description |
double[] | |
getDoubleInternal(int columnIndex)
protected abstract double getDoubleInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
getDoubleList(int columnIndex)
public List<Double> getDoubleList(int columnIndex)
Returns the value of a non-NULL
column with type Type.array(Type.float64())
.
Parameter |
---|
Name | Description |
columnIndex | int
|
getDoubleList(String columnName)
public List<Double> getDoubleList(String columnName)
Returns the value of a non-NULL
column with type Type.array(Type.float64())
.
Parameter |
---|
Name | Description |
columnName | String
|
getDoubleListInternal(int columnIndex)
protected abstract List<Double> getDoubleListInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
getJson(int columnIndex)
public String getJson(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
getJson(String columnName)
public String getJson(String columnName)
Parameter |
---|
Name | Description |
columnName | String
|
getJsonInternal(int columnIndex)
protected String getJsonInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
getJsonList(int columnIndex)
public List<String> getJsonList(int columnIndex)
Returns the value of a non-NULL
column with type Type.array(Type.string())
.
Parameter |
---|
Name | Description |
columnIndex | int
|
getJsonList(String columnName)
public List<String> getJsonList(String columnName)
Returns the value of a non-NULL
column with type Type.array(Type.string())
.
Parameter |
---|
Name | Description |
columnName | String
|
getJsonListInternal(int columnIndex)
protected List<String> getJsonListInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
getLong(int columnIndex)
public long getLong(int columnIndex)
Returns the value of a non-NULL
column with type Type#int64().
Parameter |
---|
Name | Description |
columnIndex | int
|
Returns |
---|
Type | Description |
long | |
getLong(String columnName)
public long getLong(String columnName)
Returns the value of a non-NULL
column with type Type#int64().
Parameter |
---|
Name | Description |
columnName | String
|
Returns |
---|
Type | Description |
long | |
getLongArray(int columnIndex)
public long[] getLongArray(int columnIndex)
Returns the value of a non-NULL
column with type Type.array(Type.int64())
.
Parameter |
---|
Name | Description |
columnIndex | int
|
Returns |
---|
Type | Description |
long[] | |
getLongArray(String columnName)
public long[] getLongArray(String columnName)
Returns the value of a non-NULL
column with type Type.array(Type.int64())
.
Parameter |
---|
Name | Description |
columnName | String
|
Returns |
---|
Type | Description |
long[] | |
getLongArrayInternal(int columnIndex)
protected abstract long[] getLongArrayInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
Returns |
---|
Type | Description |
long[] | |
getLongInternal(int columnIndex)
protected abstract long getLongInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
Returns |
---|
Type | Description |
long | |
getLongList(int columnIndex)
public List<Long> getLongList(int columnIndex)
Returns the value of a non-NULL
column with type Type.array(Type.int64())
.
Parameter |
---|
Name | Description |
columnIndex | int
|
getLongList(String columnName)
public List<Long> getLongList(String columnName)
Returns the value of a non-NULL
column with type Type.array(Type.int64())
.
Parameter |
---|
Name | Description |
columnName | String
|
getLongListInternal(int columnIndex)
protected abstract List<Long> getLongListInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
getString(int columnIndex)
public String getString(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
getString(String columnName)
public String getString(String columnName)
Parameter |
---|
Name | Description |
columnName | String
|
getStringInternal(int columnIndex)
protected abstract String getStringInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
getStringList(int columnIndex)
public List<String> getStringList(int columnIndex)
Returns the value of a non-NULL
column with type Type.array(Type.string())
.
Parameter |
---|
Name | Description |
columnIndex | int
|
getStringList(String columnName)
public List<String> getStringList(String columnName)
Returns the value of a non-NULL
column with type Type.array(Type.string())
.
Parameter |
---|
Name | Description |
columnName | String
|
getStringListInternal(int columnIndex)
protected abstract List<String> getStringListInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
getStructList(int columnIndex)
public List<Struct> getStructList(int columnIndex)
Returns the value of a non-NULL
column with type Type.array(Type.struct(...))
.
Parameter |
---|
Name | Description |
columnIndex | int
|
getStructList(String columnName)
public List<Struct> getStructList(String columnName)
Returns the value of a non-NULL
column with type Type.array(Type.struct(...))
.
Parameter |
---|
Name | Description |
columnName | String
|
getStructListInternal(int columnIndex)
protected abstract List<Struct> getStructListInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
getTimestamp(int columnIndex)
public Timestamp getTimestamp(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
Returns |
---|
Type | Description |
com.google.cloud.Timestamp | |
getTimestamp(String columnName)
public Timestamp getTimestamp(String columnName)
Parameter |
---|
Name | Description |
columnName | String
|
Returns |
---|
Type | Description |
com.google.cloud.Timestamp | |
getTimestampInternal(int columnIndex)
protected abstract Timestamp getTimestampInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
Returns |
---|
Type | Description |
com.google.cloud.Timestamp | |
getTimestampList(int columnIndex)
public List<Timestamp> getTimestampList(int columnIndex)
Returns the value of a non-NULL
column with type Type.array(Type.timestamp())
.
Parameter |
---|
Name | Description |
columnIndex | int
|
Returns |
---|
Type | Description |
List<com.google.cloud.Timestamp> | |
getTimestampList(String columnName)
public List<Timestamp> getTimestampList(String columnName)
Returns the value of a non-NULL
column with type Type.array(Type.timestamp())
.
Parameter |
---|
Name | Description |
columnName | String
|
Returns |
---|
Type | Description |
List<com.google.cloud.Timestamp> | |
getTimestampListInternal(int columnIndex)
protected abstract List<Timestamp> getTimestampListInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
Returns |
---|
Type | Description |
List<com.google.cloud.Timestamp> | |
getValue(int columnIndex)
public Value getValue(int columnIndex)
Returns the value of a nullable column as a Value.
Parameter |
---|
Name | Description |
columnIndex | int
|
Returns |
---|
Type | Description |
Value | |
getValue(String columnName)
public Value getValue(String columnName)
Returns the value of a nullable column as a Value.
Parameter |
---|
Name | Description |
columnName | String
|
Returns |
---|
Type | Description |
Value | |
getValueInternal(int columnIndex)
protected Value getValueInternal(int columnIndex)
Parameter |
---|
Name | Description |
columnIndex | int
|
Returns |
---|
Type | Description |
Value | |
isNull(String columnName)
public boolean isNull(String columnName)
Returns true
if a column contains a NULL
value.
Parameter |
---|
Name | Description |
columnName | String
|