Class 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 nested XPathEntityProcessor

    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 a DataSource<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
    • Constructor Detail

      • FieldReaderDataSource

        public FieldReaderDataSource()
    • Method Detail

      • init

        public void init​(Context context,
                         Properties initProps)
        Description copied from class: DataSource
        Initializes the DataSource with the Context and initialization properties.

        This is invoked by the DataImporter after creating an instance of this class.

        Specified by:
        init in class DataSource<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 class DataSource<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 class DataSource<Reader>