org.apache.solr.handler.dataimport
Class DocBuilder

java.lang.Object
  extended by org.apache.solr.handler.dataimport.DocBuilder

public class DocBuilder
extends Object

DocBuilder is responsible for creating Solr documents out of the given configuration. It also maintains statistics information. It depends on the EntityProcessor implementations to fetch data.

This API is experimental and subject to change

Since:
solr 1.3
Version:
$Id: DocBuilder.java 690134 2008-08-29 07:18:52Z shalin $

Nested Class Summary
static class DocBuilder.Statistics
           
 
Field Summary
static String DOC_BOOST
           
 DocBuilder.Statistics importStatistics
           
static String INDEX_START_TIME
           
static String LAST_INDEX_TIME
           
static String TIME_ELAPSED
           
 
Constructor Summary
DocBuilder(DataImporter context, SolrWriter writer, org.apache.solr.handler.dataimport.DataImporter.RequestParams reqParams, Map<String,String> variables)
           
 
Method Summary
 void abort()
           
 void addStatusMessage(String msg)
           
 Set<Map<String,Object>> collectDelta(DataConfig.Entity entity, DataConfig.Entity parentEntity, VariableResolverImpl resolver, DataImporter context, Set<Map<String,Object>> deletedRows)
           Collects unique keys of all Solr documents for whom one or more source tables have been changed since the last indexed time.
 void execute(String docName)
           
static EntityProcessor getEntityProcessor(DataConfig.Entity entity, SolrCore core)
           
 VariableResolverImpl getVariableResolver(DataImporter context)
           
static void main(String[] args)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DOC_BOOST

public static final String DOC_BOOST
See Also:
Constant Field Values

importStatistics

public DocBuilder.Statistics importStatistics

TIME_ELAPSED

public static final String TIME_ELAPSED
See Also:
Constant Field Values

LAST_INDEX_TIME

public static final String LAST_INDEX_TIME
See Also:
Constant Field Values

INDEX_START_TIME

public static final String INDEX_START_TIME
See Also:
Constant Field Values
Constructor Detail

DocBuilder

public DocBuilder(DataImporter context,
                  SolrWriter writer,
                  org.apache.solr.handler.dataimport.DataImporter.RequestParams reqParams,
                  Map<String,String> variables)
Method Detail

getVariableResolver

public VariableResolverImpl getVariableResolver(DataImporter context)

execute

public void execute(String docName)

addStatusMessage

public void addStatusMessage(String msg)

getEntityProcessor

public static EntityProcessor getEntityProcessor(DataConfig.Entity entity,
                                                 SolrCore core)

collectDelta

public Set<Map<String,Object>> collectDelta(DataConfig.Entity entity,
                                            DataConfig.Entity parentEntity,
                                            VariableResolverImpl resolver,
                                            DataImporter context,
                                            Set<Map<String,Object>> deletedRows)

Collects unique keys of all Solr documents for whom one or more source tables have been changed since the last indexed time.

Note: In our definition, unique key of Solr document is the primary key of the top level entity (unless skipped using docRoot=false) in the Solr document in data-config.xml

Returns:
an iterator to the list of keys for which Solr documents should be updated.

abort

public void abort()

main

public static void main(String[] args)
                 throws InterruptedException
Throws:
InterruptedException


Copyright © 2008 Apache Software Foundation. All Rights Reserved.