Package org.apache.druid.data.input
Class ListBasedInputRow
java.lang.Object
org.apache.druid.data.input.ListBasedInputRow
- All Implemented Interfaces:
Comparable<Row>,InputRow,Row
Input row backed by a
List. This implementation is most useful when the columns and dimensions are known
ahead of time, prior to encountering any data. It is used in concert with ListBasedInputRowAdapter, which
enables-
Constructor Summary
ConstructorsConstructorDescriptionListBasedInputRow(RowSignature signature, org.joda.time.DateTime timestamp, List<String> dimensions, List<Object> data) Create a row. -
Method Summary
Modifier and TypeMethodDescriptionasMap()intbooleangetDimension(String dimension) Returns the list of dimension values for the given column name.Returns the dimensions that exist in this row.Returns the metric column value for the given column name.getRaw(int columnNumber) Returns the raw dimension value for the given column name.org.joda.time.DateTimeReturns the timestamp from the epoch as an org.joda.time.DateTime.longReturns the timestamp from the epoch in milliseconds.inthashCode()static InputRowparse(RowSignature signature, TimestampSpec timestampSpec, List<String> dimensions, List<Object> data) Create a row and parse a timestamp.toString()
-
Constructor Details
-
ListBasedInputRow
public ListBasedInputRow(RowSignature signature, org.joda.time.DateTime timestamp, List<String> dimensions, List<Object> data) Create a row.- Parameters:
signature- signature; must match the "data" listtimestamp- row timestampdimensions- dimensions to be reported bygetDimensions()data- row data
-
-
Method Details
-
parse
public static InputRow parse(RowSignature signature, TimestampSpec timestampSpec, List<String> dimensions, List<Object> data) Create a row and parse a timestamp. ThrowsParseExceptionif the timestamp cannot be parsed.- Parameters:
signature- signature; must match the "data" listtimestampSpec- timestamp specdimensions- dimensions to be reported bygetDimensions()data- row data
-
getDimensions
Description copied from interface:InputRowReturns the dimensions that exist in this row.- Specified by:
getDimensionsin interfaceInputRow- Returns:
- the dimensions that exist in this row.
-
getTimestampFromEpoch
public long getTimestampFromEpoch()Description copied from interface:RowReturns the timestamp from the epoch in milliseconds. If the event happened _right now_, this would return the same thing as System.currentTimeMillis();- Specified by:
getTimestampFromEpochin interfaceRow- Returns:
- the timestamp from the epoch in milliseconds.
-
getTimestamp
public org.joda.time.DateTime getTimestamp()Description copied from interface:RowReturns the timestamp from the epoch as an org.joda.time.DateTime. If the event happened _right now_, this would return the same thing as new DateTime();- Specified by:
getTimestampin interfaceRow- Returns:
- the timestamp from the epoch as an org.joda.time.DateTime object.
-
getDimension
Description copied from interface:RowReturns the list of dimension values for the given column name.- Specified by:
getDimensionin interfaceRow- Parameters:
dimension- the column name of the dimension requested- Returns:
- the list of values for the provided column name
-
getRaw
Description copied from interface:RowReturns the raw dimension value for the given column name. This is different fromRow.getDimension(java.lang.String)which converts all values to strings before returning them. -
getRaw
-
getMetric
Description copied from interface:RowReturns the metric column value for the given column name. This method is different fromRow.getRaw(java.lang.String)in two aspects: 1. If the column is absent in the row, null will be returned. 2. If the column has string value, an attempt is made to parse this value as a number. -
compareTo
- Specified by:
compareToin interfaceComparable<Row>
-
asMap
-
equals
-
hashCode
public int hashCode() -
toString
-