Class ObjectColumnAccessorBase
- java.lang.Object
-
- org.apache.druid.query.rowsandcols.column.accessor.ObjectColumnAccessorBase
-
- All Implemented Interfaces:
ColumnAccessor
public abstract class ObjectColumnAccessorBase extends Object implements ColumnAccessor
-
-
Constructor Summary
Constructors Constructor Description ObjectColumnAccessorBase()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description int
compareRows(int lhsRowNum, int rhsRowNum)
Compares two rows using a comparison that follows the same semantics asComparator.compare(T, T)
protected abstract Comparator<Object>
getComparator()
double
getDouble(int rowNum)
Get the primitivedouble
representation of the row.float
getFloat(int rowNum)
Get the primitivefloat
representation of the row.int
getInt(int rowNum)
Get the primitiveint
representation of the row.long
getLong(int rowNum)
Get the primitivelong
representation of the row.Object
getObject(int rowNum)
Get theObject
representation of the row.protected abstract Object
getVal(int rowNum)
boolean
isNull(int rowNum)
Get whether the value of a row is null-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.druid.query.rowsandcols.column.ColumnAccessor
getType, numRows
-
-
-
-
Method Detail
-
isNull
public boolean isNull(int rowNum)
Description copied from interface:ColumnAccessor
Get whether the value of a row is null- Specified by:
isNull
in interfaceColumnAccessor
- Parameters:
rowNum
- the row id, 0-indexed- Returns:
- true if the value is null
-
getObject
@Nullable public Object getObject(int rowNum)
Description copied from interface:ColumnAccessor
Get theObject
representation of the row.- Specified by:
getObject
in interfaceColumnAccessor
- Parameters:
rowNum
- the row id, 0-indexed- Returns:
- the
Object
representation of the row. Returnsnull
IfColumnAccessor.isNull(int)
is true.
-
getDouble
public double getDouble(int rowNum)
Description copied from interface:ColumnAccessor
Get the primitivedouble
representation of the row.- Specified by:
getDouble
in interfaceColumnAccessor
- Parameters:
rowNum
- the row id, 0-indexed- Returns:
- the primitive
double
representation of the row. Returns0D
IfColumnAccessor.isNull(int)
is true.
-
getFloat
public float getFloat(int rowNum)
Description copied from interface:ColumnAccessor
Get the primitivefloat
representation of the row.- Specified by:
getFloat
in interfaceColumnAccessor
- Parameters:
rowNum
- the row id, 0-indexed- Returns:
- the primitive
float
representation of the row. Returns0F
IfColumnAccessor.isNull(int)
is true.
-
getLong
public long getLong(int rowNum)
Description copied from interface:ColumnAccessor
Get the primitivelong
representation of the row.- Specified by:
getLong
in interfaceColumnAccessor
- Parameters:
rowNum
- the row id, 0-indexed- Returns:
- the primitive
long
representation of the row. Returns0L
IfColumnAccessor.isNull(int)
is true.
-
getInt
public int getInt(int rowNum)
Description copied from interface:ColumnAccessor
Get the primitiveint
representation of the row.- Specified by:
getInt
in interfaceColumnAccessor
- Parameters:
rowNum
- the row id, 0-indexed- Returns:
- the primitive
int
representation of the row. Returns0
IfColumnAccessor.isNull(int)
is true.
-
compareRows
public int compareRows(int lhsRowNum, int rhsRowNum)
Description copied from interface:ColumnAccessor
Compares two rows using a comparison that follows the same semantics asComparator.compare(T, T)
This is not comparing the row Ids, but the values referred to by the row ids.
- Specified by:
compareRows
in interfaceColumnAccessor
- Parameters:
lhsRowNum
- the row id of the left-hand-side of the comparisonrhsRowNum
- the row id of the right-hand-side of the comparison- Returns:
- the result of the comparison of the two rows
-
getVal
protected abstract Object getVal(int rowNum)
-
getComparator
protected abstract Comparator<Object> getComparator()
-
-