Class JDBCPipesIterator
- java.lang.Object
-
- org.apache.tika.config.ConfigBase
-
- org.apache.tika.pipes.pipesiterator.PipesIterator
-
- org.apache.tika.pipes.pipesiterator.jdbc.JDBCPipesIterator
-
- All Implemented Interfaces:
Iterable<FetchEmitTuple>,Callable<Integer>,Initializable
public class JDBCPipesIterator extends PipesIterator implements Initializable
Iterates through a the results from a sql call via jdbc. This adds all columns (except for the 'fetchKeyColumn' and 'emitKeyColumn', if specified) to the metadata object.- If a 'fetchKeyColumn' is specified, this will use that column's value as the fetchKey.
- If no 'fetchKeyColumn' is specified, this will send the metadata from the other columns.
- The 'fetchKeyColumn' value is not added to the metadata.
- An 'emitKeyColumn' must be specified
- The 'emitKeyColumn' value is not added to the metadata.
-
-
Field Summary
-
Fields inherited from class org.apache.tika.pipes.pipesiterator.PipesIterator
COMPLETED_SEMAPHORE, DEFAULT_MAX_WAIT_MS, DEFAULT_QUEUE_SIZE
-
-
Constructor Summary
Constructors Constructor Description JDBCPipesIterator()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcheckInitialization(InitializableProblemHandler problemHandler)protected voidenqueue()StringgetSelect()voidinitialize(Map<String,Param> params)voidsetConnection(String connection)voidsetEmitKeyColumn(String fetchKeyColumn)voidsetFetchKeyColumn(String fetchKeyColumn)voidsetFetchKeyRangeEndColumn(String fetchKeyRangeEndColumn)voidsetFetchKeyRangeStartColumn(String fetchKeyRangeStartColumn)voidsetFetchSize(int fetchSize)voidsetIdColumn(String idColumn)voidsetQueryTimeoutSeconds(int seconds)voidsetSelect(String select)-
Methods inherited from class org.apache.tika.pipes.pipesiterator.PipesIterator
build, call, getEmitterName, getFetcherName, getHandlerConfig, getOnParseException, iterator, setEmitterName, setFetcherName, setHandlerType, setMaxEmbeddedResources, setMaxWaitMs, setOnParseException, setOnParseException, setParseMode, setParseMode, setQueueSize, setThrowOnWriteLimitReached, setWriteLimit, tryToAdd
-
Methods inherited from class org.apache.tika.config.ConfigBase
buildComposite, buildComposite, buildSingle, buildSingle, configure, handleSettings
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
-
-
-
Method Detail
-
setFetchKeyRangeStartColumn
@Field public void setFetchKeyRangeStartColumn(String fetchKeyRangeStartColumn)
-
setFetchKeyRangeEndColumn
@Field public void setFetchKeyRangeEndColumn(String fetchKeyRangeEndColumn)
-
getSelect
public String getSelect()
-
setFetchSize
@Field public void setFetchSize(int fetchSize) throws TikaConfigException
- Throws:
TikaConfigException
-
setQueryTimeoutSeconds
public void setQueryTimeoutSeconds(int seconds)
-
enqueue
protected void enqueue() throws InterruptedException, IOException, TimeoutException- Specified by:
enqueuein classPipesIterator- Throws:
InterruptedExceptionIOExceptionTimeoutException
-
initialize
public void initialize(Map<String,Param> params) throws TikaConfigException
- Specified by:
initializein interfaceInitializable- Overrides:
initializein classPipesIterator- Parameters:
params- params to use for initialization- Throws:
TikaConfigException
-
checkInitialization
public void checkInitialization(InitializableProblemHandler problemHandler) throws TikaConfigException
- Specified by:
checkInitializationin interfaceInitializable- Overrides:
checkInitializationin classPipesIterator- Parameters:
problemHandler- if there is a problem and no custom initializableProblemHandler has been configured via Initializable parameters, this is called to respond.- Throws:
TikaConfigException
-
-