public Corpus process(@NonNull Corpus input, @NonNull ProcessorContext context) throws Exception {
      Corpus corpus = input;
      for (ProcessingModule processor : processors) {
         logInfo("Running {0}...", processor.getClass().getSimpleName());
         if( processor.getOverrideStatus() ){
            corpus = processor.process(corpus, context);
            logInfo("\tComplete [Recomputed]");
         } else {
            ProcessingState temp = processor.loadPreviousState(corpus, context);
            if (temp.isLoaded()) {
               logInfo("\tComplete [Loaded]");
               corpus = temp.getCorpus();
            } else {
               corpus = processor.process(corpus, context);
               logInfo("\tComplete [Computed]");
            }
         }
      }
      return corpus;
   }
public Corpus process ( @ NonNull Corpus input , @ NonNull ProcessorContext context ) throws Exception { Corpus corpus = input ; for ( ProcessingModule processor : processors ) { logInfo ( "Running {0}..." , processor . getClass ( ) . getSimpleName ( ) ) ; if ( processor . getOverrideStatus ( ) ) { corpus = processor . process ( corpus , context ) ; logInfo ( "\tComplete [Recomputed]" ) ; } else { ProcessingState temp = processor . loadPreviousState ( corpus , context ) ; if ( temp . isLoaded ( ) ) { logInfo ( "\tComplete [Loaded]" ) ; corpus = temp . getCorpus ( ) ; } else { corpus = processor . process ( corpus , context ) ; logInfo ( "\tComplete [Computed]" ) ; } } } return corpus ; }
Process corpus.

@param input   the input
@param context the context
@return the corpus
@throws Exception the exception