Class FacetStream
- java.lang.Object
-
- org.apache.solr.client.solrj.io.stream.TupleStream
-
- org.apache.solr.client.solrj.io.stream.FacetStream
-
- All Implemented Interfaces:
Closeable
,Serializable
,AutoCloseable
,Expressible
,MapSerializable
,MapWriter
,NavigableObject
public class FacetStream extends TupleStream implements Expressible
The FacetStream abstracts the output from the JSON facet API as a Stream of Tuples. This provides an alternative to the RollupStream which uses Map/Reduce to perform aggregations.- Since:
- 6.0.0
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.solr.client.solrj.io.stream.TupleStream
TupleStream.IgnoreException
-
Nested classes/interfaces inherited from interface org.apache.solr.common.MapWriter
MapWriter.EntryWriter
-
-
Field Summary
Fields Modifier and Type Field Description protected SolrClientCache
cache
protected CloudSolrClient
cloudSolrClient
-
Constructor Summary
Constructors Constructor Description FacetStream(String zkHost, String collection, SolrParams params, Bucket[] buckets, Metric[] metrics, FieldComparator[] bucketSorts, int bucketSizeLimit)
FacetStream(StreamExpression expression, StreamFactory factory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<TupleStream>
children()
void
close()
Bucket[]
getBuckets()
int
getBucketSizeLimit()
String
getCollection()
int
getCost()
int
getOffset()
int
getOverfetch()
int
getRows()
StreamComparator
getStreamSort()
void
open()
Tuple
read()
void
setStreamContext(StreamContext context)
Explanation
toExplanation(StreamFactory factory)
Returns an explanation about the stream objectStreamExpressionParameter
toExpression(StreamFactory factory)
-
Methods inherited from class org.apache.solr.client.solrj.io.stream.TupleStream
getShards, getShards, getStreamNodeId, writeMap
-
Methods inherited from class java.lang.Object
clone, 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
-
-
-
-
Field Detail
-
cache
protected transient SolrClientCache cache
-
cloudSolrClient
protected transient CloudSolrClient cloudSolrClient
-
-
Constructor Detail
-
FacetStream
public FacetStream(String zkHost, String collection, SolrParams params, Bucket[] buckets, Metric[] metrics, FieldComparator[] bucketSorts, int bucketSizeLimit) throws IOException
- Throws:
IOException
-
FacetStream
public FacetStream(StreamExpression expression, StreamFactory factory) throws IOException
- Throws:
IOException
-
-
Method Detail
-
getBucketSizeLimit
public int getBucketSizeLimit()
-
getRows
public int getRows()
-
getOffset
public int getOffset()
-
getOverfetch
public int getOverfetch()
-
getBuckets
public Bucket[] getBuckets()
-
getCollection
public String getCollection()
-
toExpression
public StreamExpressionParameter toExpression(StreamFactory factory) throws IOException
- Specified by:
toExpression
in interfaceExpressible
- Throws:
IOException
-
toExplanation
public Explanation toExplanation(StreamFactory factory) throws IOException
Description copied from interface:Expressible
Returns an explanation about the stream object- Specified by:
toExplanation
in interfaceExpressible
- Specified by:
toExplanation
in classTupleStream
- Parameters:
factory
- Stream factory for this, contains information about the function name- Returns:
- Explanation about this stream object containing explanations of any child stream objects
- Throws:
IOException
- throw on any error
-
setStreamContext
public void setStreamContext(StreamContext context)
- Specified by:
setStreamContext
in classTupleStream
-
children
public List<TupleStream> children()
- Specified by:
children
in classTupleStream
-
open
public void open() throws IOException
- Specified by:
open
in classTupleStream
- Throws:
IOException
-
close
public void close() throws IOException
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Specified by:
close
in classTupleStream
- Throws:
IOException
-
read
public Tuple read() throws IOException
- Specified by:
read
in classTupleStream
- Throws:
IOException
-
getCost
public int getCost()
- Overrides:
getCost
in classTupleStream
-
getStreamSort
public StreamComparator getStreamSort()
- Specified by:
getStreamSort
in classTupleStream
-
-