Class UpdateStream
- java.lang.Object
 - 
- org.apache.solr.client.solrj.io.stream.TupleStream
 - 
- org.apache.solr.client.solrj.io.stream.UpdateStream
 
 
 
- 
- All Implemented Interfaces:
 Closeable,Serializable,AutoCloseable,Expressible,org.apache.solr.common.MapSerializable,org.apache.solr.common.MapWriter,org.apache.solr.common.NavigableObject
- Direct Known Subclasses:
 DeleteStream
public class UpdateStream extends TupleStream implements Expressible
Sends tuples emitted by a wrappedTupleStreamas updates to a SolrCloud collection.- 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 
 - 
 
- 
Field Summary
Fields Modifier and Type Field Description static StringBATCH_INDEXED_FIELD_NAME 
- 
Constructor Summary
Constructors Constructor Description UpdateStream(String collectionName, TupleStream tupleSource, String zkHost, int updateBatchSize)UpdateStream(StreamExpression expression, StreamFactory factory) 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<TupleStream>children()voidclose()protected booleandefaultPruneVersionField()Used during initialization to specify the default value for the"pruneVersionField"option.protected org.apache.solr.client.solrj.impl.CloudSolrClientgetCloudSolrClient()Only viable after callingopen()protected StringgetCollectionName()The name of the collection being updatedStreamComparatorgetStreamSort()voidopen()Tupleread()voidsetStreamContext(StreamContext context)ExplanationtoExplanation(StreamFactory factory)Returns an explanation about the stream objectStreamExpressiontoExpression(StreamFactory factory)protected voiduploadBatchToCollection(List<org.apache.solr.common.SolrInputDocument> documentBatch)This method will be called on every batch of tuples comsumed, after converting each tuple in that batch to a Solr Input Document.- 
Methods inherited from class org.apache.solr.client.solrj.io.stream.TupleStream
getCost, getShards, getShards, getStreamNodeId, writeMap 
 - 
 
 - 
 
- 
- 
Field Detail
- 
BATCH_INDEXED_FIELD_NAME
public static String BATCH_INDEXED_FIELD_NAME
 
 - 
 
- 
Constructor Detail
- 
UpdateStream
public UpdateStream(StreamExpression expression, StreamFactory factory) throws IOException
- Throws:
 IOException
 
- 
UpdateStream
public UpdateStream(String collectionName, TupleStream tupleSource, String zkHost, int updateBatchSize) throws IOException
- Throws:
 IOException
 
 - 
 
- 
Method Detail
- 
getCollectionName
protected String getCollectionName()
The name of the collection being updated 
- 
open
public void open() throws IOException- Specified by:
 openin classTupleStream- Throws:
 IOException
 
- 
read
public Tuple read() throws IOException
- Specified by:
 readin classTupleStream- Throws:
 IOException
 
- 
close
public void close() throws IOException- Specified by:
 closein interfaceAutoCloseable- Specified by:
 closein interfaceCloseable- Specified by:
 closein classTupleStream- Throws:
 IOException
 
- 
getStreamSort
public StreamComparator getStreamSort()
- Specified by:
 getStreamSortin classTupleStream
 
- 
children
public List<TupleStream> children()
- Specified by:
 childrenin classTupleStream
 
- 
toExpression
public StreamExpression toExpression(StreamFactory factory) throws IOException
- Specified by:
 toExpressionin interfaceExpressible- Throws:
 IOException
 
- 
toExplanation
public Explanation toExplanation(StreamFactory factory) throws IOException
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
public void setStreamContext(StreamContext context)
- Specified by:
 setStreamContextin classTupleStream
 
- 
defaultPruneVersionField
protected boolean defaultPruneVersionField()
Used during initialization to specify the default value for the"pruneVersionField"option.UpdateStreamreturnstruefor backcompat and to simplify slurping of data from one collection to another. 
- 
getCloudSolrClient
protected org.apache.solr.client.solrj.impl.CloudSolrClient getCloudSolrClient()
Only viable after callingopen() 
- 
uploadBatchToCollection
protected void uploadBatchToCollection(List<org.apache.solr.common.SolrInputDocument> documentBatch) throws IOException
This method will be called on every batch of tuples comsumed, after converting each tuple in that batch to a Solr Input Document.- Throws:
 IOException
 
 - 
 
 -