Class FieldReaderDataSource
- java.lang.Object
-
- org.apache.solr.handler.dataimport.DataSource<Reader>
-
- org.apache.solr.handler.dataimport.FieldReaderDataSource
-
public class FieldReaderDataSource extends DataSource<Reader>
This can be useful for users who have a DB field containing xml and wish to use a nestedXPathEntityProcessor
The datasouce may be configured as follows
<datasource name="f1" type="FieldReaderDataSource" />
The entity which uses this datasource must keep the url value as the variable name url="field-name"
The fieldname must be resolvable from
VariableResolver
This may be used with any
EntityProcessor
which uses aDataSource
<Reader
> eg:XPathEntityProcessor
Supports String, BLOB, CLOB data types and there is an extra field (in the entity) 'encoding' for BLOB types
- Since:
- 1.4
-
-
Field Summary
Fields Modifier and Type Field Description protected String
dataField
protected VariableResolver
vr
-
Constructor Summary
Constructors Constructor Description FieldReaderDataSource()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
Cleans up resources of this DataSource after use.Reader
getData(String query)
Get records for the given query.The return type depends on the implementation .void
init(Context context, Properties initProps)
Initializes the DataSource with theContext
and initialization properties.
-
-
-
Field Detail
-
vr
protected VariableResolver vr
-
dataField
protected String dataField
-
-
Method Detail
-
init
public void init(Context context, Properties initProps)
Description copied from class:DataSource
Initializes the DataSource with theContext
and initialization properties.This is invoked by the
DataImporter
after creating an instance of this class.- Specified by:
init
in classDataSource<Reader>
-
getData
public Reader getData(String query)
Description copied from class:DataSource
Get records for the given query.The return type depends on the implementation .- Specified by:
getData
in classDataSource<Reader>
- Parameters:
query
- The query string. It can be a SQL for JdbcDataSource or a URL for HttpDataSource or a file location for FileDataSource or a custom format for your own custom DataSource.- Returns:
- Depends on the implementation. For instance JdbcDataSource returns an Iterator<Map <String,Object>>
-
close
public void close()
Description copied from class:DataSource
Cleans up resources of this DataSource after use.- Specified by:
close
in classDataSource<Reader>
-
-