Class SolrEntityProcessor
- java.lang.Object
-
- org.apache.solr.handler.dataimport.EntityProcessor
-
- org.apache.solr.handler.dataimport.EntityProcessorBase
-
- org.apache.solr.handler.dataimport.SolrEntityProcessor
-
public class SolrEntityProcessor extends EntityProcessorBase
An implementation of
EntityProcessor
which fetches values from a separate Solr implementation using the SolrJ client library. Yield a row per Solr document.Limitations: All configuration is evaluated at the beginning; Only one query is walked;
-
-
Field Summary
Fields Modifier and Type Field Description static String
QUERY
static int
ROWS_DEFAULT
static String
SOLR_SERVER
static String
TIMEOUT
static int
TIMEOUT_SECS
-
Fields inherited from class org.apache.solr.handler.dataimport.EntityProcessorBase
ABORT, cacheSupport, context, CONTINUE, entityName, isFirstInit, ON_ERROR, onError, query, rowIterator, SKIP, TRANSFORM_ROW, TRANSFORMER
-
-
Constructor Summary
Constructors Constructor Description SolrEntityProcessor()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
buildIterator()
The following method changes the rowIterator mutable field.void
destroy()
Invoked for each entity at the very end of the import to do any needed cleanup tasks.protected void
firstInit(Context context)
first time init call.protected org.apache.http.client.HttpClient
getHttpClient()
Factory method that returns aHttpClient
instance used for interfacing with a source Solr service.protected void
nextPage()
Map<String,Object>
nextRow()
For a simple implementation, this is the only method that the sub-class should implement.-
Methods inherited from class org.apache.solr.handler.dataimport.EntityProcessorBase
getNext, init, initCache, nextDeletedRowKey, nextModifiedParentRowKey, nextModifiedRowKey
-
Methods inherited from class org.apache.solr.handler.dataimport.EntityProcessor
close, postTransform
-
-
-
-
Field Detail
-
SOLR_SERVER
public static final String SOLR_SERVER
- See Also:
- Constant Field Values
-
QUERY
public static final String QUERY
- See Also:
- Constant Field Values
-
TIMEOUT
public static final String TIMEOUT
- See Also:
- Constant Field Values
-
TIMEOUT_SECS
public static final int TIMEOUT_SECS
- See Also:
- Constant Field Values
-
ROWS_DEFAULT
public static final int ROWS_DEFAULT
- See Also:
- Constant Field Values
-
-
Method Detail
-
destroy
public void destroy()
Description copied from class:EntityProcessor
Invoked for each entity at the very end of the import to do any needed cleanup tasks.- Overrides:
destroy
in classEntityProcessorBase
-
getHttpClient
protected org.apache.http.client.HttpClient getHttpClient()
Factory method that returns aHttpClient
instance used for interfacing with a source Solr service. One can override this method to return a differently configuredHttpClient
instance. For example configure https and http authentication.- Returns:
- a
HttpClient
instance used for interfacing with a source Solr service
-
firstInit
protected void firstInit(Context context)
Description copied from class:EntityProcessorBase
first time init call. do one-time operations here it's necessary to call it from the overridden method, otherwise it throws NPE on accessing zipper from nextRow()- Overrides:
firstInit
in classEntityProcessorBase
-
nextRow
public Map<String,Object> nextRow()
Description copied from class:EntityProcessorBase
For a simple implementation, this is the only method that the sub-class should implement. This is intended to stream rows one-by-one. Return null to signal end of rows- Overrides:
nextRow
in classEntityProcessorBase
- Returns:
- a row where the key is the name of the field and value can be any Object or a Collection of objects. Return null to signal end of rows
-
buildIterator
protected void buildIterator()
The following method changes the rowIterator mutable field. It requires external synchronization.
-
nextPage
protected void nextPage()
-
-