org.apache.solr.handler.dataimport
Class XPathEntityProcessor
java.lang.Object
org.apache.solr.handler.dataimport.EntityProcessor
org.apache.solr.handler.dataimport.EntityProcessorBase
org.apache.solr.handler.dataimport.XPathEntityProcessor
public class XPathEntityProcessor
- extends EntityProcessorBase
An implementation of EntityProcessor which uses a streaming xpath parser to extract values out of XML documents.
It is typically used in conjunction with HttpDataSource or FileDataSource.
Refer to http://wiki.apache.org/solr/DataImportHandler for more
details.
This API is experimental and may change in the future.
- Since:
- solr 1.3
- Version:
- $Id: XPathEntityProcessor.java 808759 2009-08-28 05:22:08Z noble $
- See Also:
XPathRecordReader
Fields inherited from class org.apache.solr.handler.dataimport.EntityProcessorBase |
ABORT, CACHE_KEY, CACHE_LOOKUP, cachePk, cacheVariableName, cacheWithWhereClause, context, CONTINUE, dataSourceRowCache, entityName, isFirstInit, ON_ERROR, onError, query, resolver, rowIterator, simpleCache, SKIP, SKIP_DOC, TRANSFORM_ROW, TRANSFORMER, transformers |
Methods inherited from class org.apache.solr.handler.dataimport.EntityProcessorBase |
cacheInit, destroy, firstInit, getAllNonCachedRows, getFromRowCacheTransformed, getIdCacheData, getNext, getSimpleCacheData, nextDeletedRowKey, nextModifiedParentRowKey, nextModifiedRowKey |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
placeHolderVariables
protected List<String> placeHolderVariables
commonFields
protected List<String> commonFields
dataSource
protected DataSource<Reader> dataSource
xslTransformer
protected Transformer xslTransformer
useSolrAddXml
protected boolean useSolrAddXml
streamRows
protected boolean streamRows
URL
public static final String URL
- See Also:
- Constant Field Values
HAS_MORE
public static final String HAS_MORE
- See Also:
- Constant Field Values
NEXT_URL
public static final String NEXT_URL
- See Also:
- Constant Field Values
XPATH_FIELD_NAME
public static final String XPATH_FIELD_NAME
- See Also:
- Constant Field Values
FOR_EACH
public static final String FOR_EACH
- See Also:
- Constant Field Values
XPATH
public static final String XPATH
- See Also:
- Constant Field Values
COMMON_FIELD
public static final String COMMON_FIELD
- See Also:
- Constant Field Values
USE_SOLR_ADD_SCHEMA
public static final String USE_SOLR_ADD_SCHEMA
- See Also:
- Constant Field Values
XSL
public static final String XSL
- See Also:
- Constant Field Values
STREAM
public static final String STREAM
- See Also:
- Constant Field Values
XPathEntityProcessor
public XPathEntityProcessor()
init
public void init(Context context)
- Description copied from class:
EntityProcessor
- This method is called when it starts processing an entity. When it comes
back to the entity it is called again. So it can reset anything at that point.
For a rootmost entity this is called only once for an ingestion. For sub-entities , this
is called multiple once for each row from its parent entity
- Overrides:
init
in class EntityProcessorBase
- Parameters:
context
- The current context
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
postTransform
public void postTransform(Map<String,Object> r)
- Description copied from class:
EntityProcessor
- Invoked after the transformers are invoked. EntityProcessors can add, remove or modify values
added by Transformers in this method.
- Overrides:
postTransform
in class EntityProcessor
- Parameters:
r
- The transformed row
Copyright © 2011 Apache Software Foundation. All Rights Reserved.