Pipes Plugins
Tika Pipes is extensible through plugins. Each plugin lives in its own Maven module and can implement one or more of the four pipes extension points:
-
Fetcher — retrieves document bytes from a source.
-
Emitter — writes parsed results to a destination.
-
Iterator (
PipesIterator) — enumerates documents to process asFetchEmitTuplerecords. -
Reporter (
PipesReporter) — records per-document processing status.
Many plugins implement more than one (e.g., the S3 plugin provides fetcher, emitter, and iterator). The pages below document each plugin once, with one section per implemented interface.
Plugin / Interface Matrix
| Plugin | Fetcher | Emitter | Iterator | Reporter |
|---|---|---|---|---|
✓ |
✓ |
✓ |
✓ |
|
✓ |
✓ |
✓ |
— |
|
✓ |
✓ |
✓ |
— |
|
✓ |
✓ |
✓ |
— |
|
— |
✓ |
— |
✓ |
|
— |
✓ |
— |
✓ |
|
— |
✓ |
✓ |
— |
|
— |
✓ |
✓ |
✓ |
|
— |
✓ |
✓ |
— |
|
✓ |
— |
— |
— |
|
✓ |
— |
— |
— |
|
✓ |
— |
— |
— |
|
✓ |
— |
— |
— |
|
— |
— |
✓ |
— |
|
— |
— |
✓ |
— |
Interface Overviews
For descriptions of the interfaces themselves — their contracts, the shared concepts (FetchKey, FetchEmitTuple, fetcherId/emitterId wiring, etc.), and how they fit into a pipeline — see:
To implement one of those interfaces and package it as a plugin, see Writing a Pipes Plugin.