Hi Artem,

did you try asking the AggregateBuilder for a description,
calling getOperationalProperties().setOutputsNewCASes(true)
on the description and then creating the engine?

I have an apparently working piece of code looking along these lines

// The part starting with a splitter and ending with a merger has to be in its 
own
// aggregate. The flow controller of the aggregate has to drop the intermediate 
CASes.
FlowControllerDescription fcd = 
createFlowControllerDescription(FixedFlowController.class,
  FixedFlowController.PARAM_ACTION_AFTER_CAS_MULTIPLIER, "drop");
AnalysisEngineDescription embedded = createEngineDescription(fcd, splitter, 
tokenizer, merger);

// The final merged CAS, however, needs to be returned from the aggregate
embedded.getAnalysisEngineMetaData().getOperationalProperties().setOutputsNewCASes(true);

// Need to wrap into another aggregate because runPipeline has no immediate 
support for
// flow control
AnalysisEngineDescription pipelineDesc = 
createEngineDescription(sentenceDetector, embedded, consumer);

SimplePipeline.runPipeline(createReaderDescription(…), pipelineDesc);

Cheers,

-- Richard

On 30.08.2013, at 23:32, Artem Vovk <[email protected]> wrote:

> Hi,
> 
> I wanted to write a test for MyJCasMultiplier, to check how many JCases are 
> created. Here is my code:
> 
> AnalysisEngineDescription segmenter =   
> createEngineDescription(BreakIteratorSegmenter.class);
> 
> AnalysisEngineDescription multiplier = 
> createEngineDescription(MyJCasMultiplier.class);
>       
> AggregateBuilder ab = new AggregateBuilder();
> ab.add(segmenter);
> ab.add(multiplier);
> 
> AnalysisEngine engine = ab.createAggregate();
> engine.getAnalysisEngineMetaData().getOperationalProperties().setOutputsNewCASes(true);
> 
> JCas jCas = engine.newJCas();
> jCas.setDocumentText(testString);
> JCasIterator it = engine.processAndOutputNewCASes(jCas);
> 
> The problem is that engine.processAndOutputNewCASes(jCas) returns always 0 
> JCases, but I know it should be more :) Did I miss something here or it is a 
> framework issue?
> 
> Best,
> Artem

Reply via email to