<?xml version="1.0" encoding="UTF-8"?>
  <!--
   ***************************************************************
   * Licensed to the Apache Software Foundation (ASF) under one
   * or more contributor license agreements.  See the NOTICE file
   * distributed with this work for additional information
   * regarding copyright ownership.  The ASF licenses this file
   * to you under the Apache License, Version 2.0 (the
   * "License"); you may not use this file except in compliance
   * with the License.  You may obtain a copy of the License at
         *
   *   http://www.apache.org/licenses/LICENSE-2.0
   * 
   * Unless required by applicable law or agreed to in writing,
   * software distributed under the License is distributed on an
   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
   * KIND, either express or implied.  See the License for the
   * specific language governing permissions and limitations
   * under the License.
   ***************************************************************
   -->
<analysisEngineDescription xmlns="http://uima.apache.org/resourceSpecifier">
  <frameworkImplementation>org.apache.uima.java</frameworkImplementation>
  <primitive>false</primitive>
  <delegateAnalysisEngineSpecifiers>
    <delegateAnalysisEngine key="TestMultiplier">
      <import location="../multiplier/SimpleCasGeneratorProducing10Cases.xml"/>
    </delegateAnalysisEngine>
    <delegateAnalysisEngine key="NoOp">
      <import location="NoOpAnnotator.xml"/>
    </delegateAnalysisEngine>
  </delegateAnalysisEngineSpecifiers>
  <flowController key="BuggyAdvancedFixedFlowController">
    <import location="../flow/BuggyAdvancedFixedFlowController.xml"/>
  </flowController>
  <analysisEngineMetaData>
    <name>Test Aggregate TAE</name>
    <description>Detects Nothing</description>
    <configurationParameters searchStrategy="language_fallback">
      <configurationParameter>
        <name>Flow</name>
        <description>Specifies the flow. This is an array of strings where each string is either a single Analysis
          Engine key or a comma-separated list of Analysis Engine keys that should be executed in parallel.</description>
        <type>String</type>
        <multiValued>true</multiValued>
        <mandatory>true</mandatory>
        <overrides>
          <parameter>BuggyAdvancedFixedFlowController/Flow</parameter>
        </overrides>
      </configurationParameter>
      <configurationParameter>
        <name>AllowContinueOnFailure</name>
        <description/>
        <type>String</type>
        <multiValued>true</multiValued>
        <mandatory>false</mandatory>
        <overrides>
          <parameter>BuggyAdvancedFixedFlowController/AllowContinueOnFailure</parameter>
        </overrides>
      </configurationParameter>
      <configurationParameter>
        <name>ActionAfterCasMultiplier</name>
        <description>The action to be taken after a CAS has been input to a CAS Multiplier and the CAS Multiplier has
          finished processing it. Valid values are: continue - the CAS continues on to the next element in the flow
          stop - the CAS will no longer continue in the flow, and will be returned from the aggregate if possible. drop -
          the CAS will no longer continue in the flow, and will be dropped (not returned from the aggregate) if
          possible. dropIfNewCasProduced (the default) - if the CAS multiplier produced a new CAS as a result of
          processing this CAS, then this CAS will be dropped. If not, then this CAS will continue.</description>
        <type>String</type>
        <multiValued>false</multiValued>
        <mandatory>false</mandatory>
        <overrides>
          <parameter>BuggyAdvancedFixedFlowController/ActionAfterCasMultiplier</parameter>
        </overrides>
      </configurationParameter>
    </configurationParameters>
    <configurationParameterSettings>
      <nameValuePair>
        <name>Flow</name>
        <value>
          <array>
            <string>TestMultiplier</string>
            <string>NoOp</string>
          </array>
        </value>
      </nameValuePair>
      <nameValuePair>
        <name>AllowContinueOnFailure</name>
        <value>
          <array>
            <string>TestMultiplier</string>
          </array>
        </value>
      </nameValuePair>
      <nameValuePair>
        <name>ActionAfterCasMultiplier</name>
        <value>
          <string>invalid</string>
        </value>
      </nameValuePair>
    </configurationParameterSettings>
    <flowConstraints>
      <fixedFlow>
        <node>TestMultiplier</node>
        <node>NoOp</node>
      </fixedFlow>
    </flowConstraints>
    <capabilities>
      <capability>
        <inputs/>
        <outputs/>
        <languagesSupported>
          <language>en</language>
        </languagesSupported>
      </capability>
    </capabilities>
    <operationalProperties>
      <modifiesCas>true</modifiesCas>
      <multipleDeploymentAllowed>true</multipleDeploymentAllowed>
      <outputsNewCASes>false</outputsNewCASes>
    </operationalProperties>
  </analysisEngineMetaData>
</analysisEngineDescription>
