Interface Processor

All Known Subinterfaces:
WrappingProcessor
All Known Implementing Classes:
AbstractProcessor, CompoundProcessor, ConditionalProcessor, DropProcessor, PipelineProcessor, TrackingResultProcessor

public interface Processor
A processor implementation may modify the data belonging to a document. Whether changes are made and what exactly is modified is up to the implementation. Processors may get called concurrently and thus need to be thread-safe.
  • Nested Class Summary

    Nested Classes 
    Modifier and Type Interface Description
    static interface  Processor.Factory
    A factory that knows how to construct a processor based on a map of maps.
    static class  Processor.Parameters
    Infrastructure class that holds services that can be used by processor factories to create processor instances and that gets passed around to all IngestPlugins.
  • Method Summary

    Modifier and Type Method Description
    IngestDocument execute​(IngestDocument ingestDocument)
    Introspect and potentially modify the incoming data.
    default void execute​(IngestDocument ingestDocument, java.util.function.BiConsumer<IngestDocument,​java.lang.Exception> handler)
    Introspect and potentially modify the incoming data.
    java.lang.String getTag()
    Gets the tag of a processor.
    java.lang.String getType()
    Gets the type of a processor
  • Method Details

    • execute

      default void execute​(IngestDocument ingestDocument, java.util.function.BiConsumer<IngestDocument,​java.lang.Exception> handler)
      Introspect and potentially modify the incoming data. Expert method: only override this method if a processor implementation needs to make an asynchronous call, otherwise just overwrite execute(IngestDocument).
    • execute

      IngestDocument execute​(IngestDocument ingestDocument) throws java.lang.Exception
      Introspect and potentially modify the incoming data.
      Returns:
      If null is returned then the current document will be dropped and not be indexed, otherwise this document will be kept and indexed
      Throws:
      java.lang.Exception
    • getType

      java.lang.String getType()
      Gets the type of a processor
    • getTag

      java.lang.String getTag()
      Gets the tag of a processor.