Class PriorityStream
java.lang.Object
org.apache.solr.client.solrj.io.stream.TupleStream
org.apache.solr.client.solrj.io.stream.PriorityStream
- All Implemented Interfaces:
Closeable,Serializable,AutoCloseable,Expressible,org.apache.solr.common.MapSerializable,org.apache.solr.common.MapWriter,org.apache.solr.common.NavigableObject,org.noggit.JSONWriter.Writable
The priority function wraps two topics that represent high priority and low priority task queues.
Each time the priority function is called it will check to see if there are any high priority
tasks in the queue. If there are high priority tasks, then the high priority queue will be read
until it returns the EOF Tuple.
If there are no tasks in the high priority queue, then the lower priority task queue will be opened and read until the EOF Tuple is returned.
The scheduler is designed to be wrapped by the executor function and a daemon function can be used to call the executor iteratively.
- Since:
- 6.4.0
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.solr.client.solrj.io.stream.TupleStream
TupleStream.IgnoreExceptionNested classes/interfaces inherited from interface org.apache.solr.common.MapWriter
org.apache.solr.common.MapWriter.EntryWriter -
Field Summary
Fields inherited from interface org.apache.solr.common.MapWriter
EMPTY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionchildren()voidclose()intgetCost()voidopen()read()voidsetStreamContext(StreamContext streamContext) toExplanation(StreamFactory factory) Returns an explanation about the stream objecttoExpression(StreamFactory factory) Methods inherited from class org.apache.solr.client.solrj.io.stream.TupleStream
getShards, getShards, getStreamNodeId, writeMapMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.solr.common.MapWriter
jsonStr, toMap, writeMethods inherited from interface org.apache.solr.common.NavigableObject
_forEachEntry, _forEachEntry, _forEachEntry, _get, _get, _getStr, _getStr, _size
-
Constructor Details
-
PriorityStream
- Throws:
IOException
-
-
Method Details
-
toExpression
- Specified by:
toExpressionin interfaceExpressible- Throws:
IOException
-
toExplanation
Description copied from interface:ExpressibleReturns an explanation about the stream object- Specified by:
toExplanationin interfaceExpressible- Specified by:
toExplanationin 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
- Specified by:
setStreamContextin classTupleStream
-
children
- Specified by:
childrenin classTupleStream
-
open
- Specified by:
openin classTupleStream- Throws:
IOException
-
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein classTupleStream- Throws:
IOException
-
read
- Specified by:
readin classTupleStream- Throws:
IOException
-
getStreamSort
- Specified by:
getStreamSortin classTupleStream
-
getCost
public int getCost()- Overrides:
getCostin classTupleStream
-