<?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.
   ***************************************************************
   -->
<analysisEngineDeploymentDescription xmlns="http://uima.apache.org/resourceSpecifier">
  
  <name>Top Level TAE</name>
  <description></description>
  
  <deployment protocol="jms" provider="activemq">
    <casPool numberOfCASes="5"/>
    <service>
      <inputQueue endpoint="TopLevelTaeQueue" brokerURL="tcp://localhost:8118" prefetch="1"/>
      <topDescriptor>
        <import location="../descriptors/analysis_engine/SimpleTestAggregateWithLongDelay.xml"/>
      </topDescriptor>
      <analysisEngine>
        <delegates>
        <!--
          <analysisEngine key="TestMultiplier">
	        <casMultiplier poolSize="5"/> 
          </analysisEngine>
        -->
          <remoteAnalysisEngine key="NoOpA">
	                  <inputQueue endpoint="NoOpAnnotatorAQueue" brokerURL="tcp://localhost:8118"/> 
	                  <serializer method="xmi"/>
                      <asyncAggregateErrorConfiguration>
                      </asyncAggregateErrorConfiguration>
          </remoteAnalysisEngine>

          <remoteAnalysisEngine key="NoOpB">
	                  <inputQueue endpoint="NoOpAnnotatorBQueue" brokerURL="tcp://localhost:8118"/> 
	                  <serializer method="xmi"/>
                      <asyncAggregateErrorConfiguration>
                      </asyncAggregateErrorConfiguration>
          </remoteAnalysisEngine>

			
          <remoteAnalysisEngine key="NoOpC">
	                  <inputQueue endpoint="NoOpAnnotatorCQueue" brokerURL="tcp://localhost:8118"/> 
	                  <serializer method="xmi"/>
                      <asyncAggregateErrorConfiguration>
                      </asyncAggregateErrorConfiguration>
          </remoteAnalysisEngine>
			
        </delegates>
      </analysisEngine>
    </service>
  </deployment>
  
</analysisEngineDeploymentDescription>