Interface DocumentProcessor

All Known Implementing Classes:
AsyncDocumentProcessor, AsyncNodeStateProcessor, CompositeDocumentProcessor, ConsistencyCheck, NodeCounter, OrphanedNodeCheck, Progress, ProgressWithETA, ReferenceCheck, Summary

public interface DocumentProcessor
Defines an interface to process NodeDocuments.
  • Method Summary

    Modifier and Type
    Method
    Description
    default void
    end(@NotNull BlockingQueue<Result> results)
    This method is called after the last document has been processed.
    static String
     
    void
    processDocument(@NotNull NodeDocument document, @NotNull BlockingQueue<Result> results)
    Process the given document and publish the result to the results queue.
  • Method Details

    • processDocument

      void processDocument(@NotNull @NotNull NodeDocument document, @NotNull @NotNull BlockingQueue<Result> results) throws InterruptedException
      Process the given document and publish the result to the results queue. An implementation is not required to publish a result for each processed document.
      Parameters:
      document - the document to process.
      results - the queue to publish results if necessary.
      Throws:
      InterruptedException - if publishing a result is interrupted.
    • end

      default void end(@NotNull @NotNull BlockingQueue<Result> results) throws InterruptedException
      This method is called after the last document has been processed. An implementation may wish to publish aggregated results at the end.
      Parameters:
      results - the queue to publish results if necessary.
      Throws:
      InterruptedException - if publishing a result is interrupted.
    • nowAsISO8601

      static String nowAsISO8601()
      Returns:
      the current time as an ISO-8601 formatted string.