Package org.apache.solr.client.solrj.io
Class Tuple
- java.lang.Object
-
- org.apache.solr.client.solrj.io.Tuple
-
- All Implemented Interfaces:
Cloneable
,MapSerializable
,MapWriter
,NavigableObject
- Direct Known Subclasses:
DbscanEvaluator.ClusterTuple
,KmeansEvaluator.ClusterTuple
,KnnRegressionEvaluator.KnnRegressionTuple
,LoessEvaluator.LoessRegressionTuple
,OLSRegressionEvaluator.MultipleRegressionTuple
,RegressionEvaluator.RegressionTuple
public class Tuple extends Object implements Cloneable, MapWriter
A simple abstraction of a record containing key/value pairs. Convenience methods are provided for returning single and multiValue String, Long and Double values. Note that ints and floats are treated as longs and doubles respectively.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.solr.common.MapWriter
MapWriter.EntryWriter
-
-
Field Summary
Fields Modifier and Type Field Description boolean
EOF
When EOF field is true the Tuple marks the end of the stream.boolean
EXCEPTION
When EXCEPTION field is true the Tuple marks an exception in the stream and the corresponding "EXCEPTION" field contains a related message.Map<String,String>
fieldLabels
Deprecated.usegetFieldLabels()
instead of this public field.List<String>
fieldNames
Deprecated.usegetFieldNames()
instead of this public field.Map<String,Object>
fields
Deprecated.usegetFields()
instead of this public field.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description Tuple
clone()
static Tuple
EOF()
Create a new empty tuple marked as EOF.static Tuple
EXCEPTION(String msg, boolean eof)
Create a new empty tuple marked as EXCEPTION, and optionally EOF.static Tuple
EXCEPTION(Throwable t, boolean eof)
Create a new empty tuple marked as EXCEPTION and optionally EOF.Object
get(String key)
Boolean
getBool(String key)
List<Boolean>
getBools(String key)
Date
getDate(String key)
List<Date>
getDates(String key)
Double
getDouble(String key)
List<Double>
getDoubles(String key)
String
getException()
Map<String,String>
getFieldLabels()
This represents the mapping of external field labels to the tuple's internal field names if they are different from field names.List<String>
getFieldNames()
A list of field names to serialize.Map<String,Object>
getFields()
Return all tuple fields and their values.Long
getLong(String key)
List<Long>
getLongs(String key)
Map<String,Object>
getMap()
Deprecated.usegetFields()
instead.List<Map<?,?>>
getMaps(String key)
Map<String,Map<?,?>>
getMetrics()
String
getString(String key)
List<String>
getStrings(String key)
void
merge(Tuple other)
The other tuples fields and fieldLabels will be putAll'd directly to this's fields and fieldLabels while other's fieldNames will be added such that duplicates aren't present.void
put(String key, Object value)
void
putAll(Map<String,?> fields)
void
remove(String key)
void
setFieldLabels(Map<String,String> fieldLabels)
void
setFieldNames(List<String> fieldNames)
void
setMaps(String key, List<Map<?,?>> maps)
void
setMetrics(Map<String,Map<?,?>> metrics)
void
writeMap(MapWriter.EntryWriter ew)
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.solr.common.NavigableObject
_forEachEntry, _forEachEntry, _forEachEntry, _get, _get, _getStr, _getStr, _size
-
-
-
-
Field Detail
-
EOF
public boolean EOF
When EOF field is true the Tuple marks the end of the stream. The EOF Tuple will not contain a record from the stream, but it may contain metrics/aggregates gathered by underlying streams.
-
EXCEPTION
public boolean EXCEPTION
When EXCEPTION field is true the Tuple marks an exception in the stream and the corresponding "EXCEPTION" field contains a related message.
-
fields
@Deprecated public Map<String,Object> fields
Deprecated.usegetFields()
instead of this public field.Tuple fields.
-
fieldNames
@Deprecated public List<String> fieldNames
Deprecated.usegetFieldNames()
instead of this public field.External serializable field names.
-
fieldLabels
@Deprecated public Map<String,String> fieldLabels
Deprecated.usegetFieldLabels()
instead of this public field.Mapping of external field names to internal tuple field names.
-
-
Method Detail
-
remove
public void remove(String key)
-
getException
public String getException()
-
getMap
@Deprecated(since="8.6.0") public Map<String,Object> getMap()
Deprecated.usegetFields()
instead.Return all tuple fields.
-
getFieldLabels
public Map<String,String> getFieldLabels()
This represents the mapping of external field labels to the tuple's internal field names if they are different from field names.- Returns:
- field labels or null
-
getFieldNames
public List<String> getFieldNames()
A list of field names to serialize. This list (together with the mapping ingetFieldLabels()
determines what tuple values are serialized and their external (serialized) names.- Returns:
- list of external field names or null
-
merge
public void merge(Tuple other)
The other tuples fields and fieldLabels will be putAll'd directly to this's fields and fieldLabels while other's fieldNames will be added such that duplicates aren't present.- Parameters:
other
- Tuple to be merged into this.
-
writeMap
public void writeMap(MapWriter.EntryWriter ew) throws IOException
- Specified by:
writeMap
in interfaceMapWriter
- Throws:
IOException
-
EOF
public static Tuple EOF()
Create a new empty tuple marked as EOF.
-
EXCEPTION
public static Tuple EXCEPTION(String msg, boolean eof)
Create a new empty tuple marked as EXCEPTION, and optionally EOF.- Parameters:
msg
- exception messageeof
- if true the tuple will be marked as EOF
-
-