Class 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;

    • Constructor Detail

      • SolrEntityProcessor

        public SolrEntityProcessor()
    • 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 class EntityProcessorBase
      • getHttpClient

        protected org.apache.http.client.HttpClient getHttpClient()
        Factory method that returns a HttpClient instance used for interfacing with a source Solr service. One can override this method to return a differently configured HttpClient 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 class EntityProcessorBase
      • 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 class EntityProcessorBase
        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()