<?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>Meeting Detector TAE</name>
  <description>Deploys Meeting Detector Aggregate AE that uses remotely deployed RoomNumberAnnotator.</description>
  
  <deployment protocol="jms" provider="activemq">
    <casPool numberOfCASes="5" initialFsHeapSize="500"/>
    <service>
      <inputQueue endpoint="MeetingDetectorTaeQueue" brokerURL="${DefaultBrokerURL}"/>
      <topDescriptor>
        <import location="../descriptors/tutorial/ex4/MeetingDetectorTAEContinueOnError.xml"/>
      </topDescriptor>
      <analysisEngine>
        <delegates>
          <remoteAnalysisEngine key="RoomNumber">
            <inputQueue endpoint="RoomNumberAnnotatorQueue" brokerURL="${DefaultBrokerURL}"/>
            <serializer method="binary"/>
            <asyncAggregateErrorConfiguration>
              <getMetadataErrors maxRetries="0" timeout="1000" errorAction="disable"/>
              <processCasErrors maxRetries="0" timeout="1000" continueOnRetryFailure="true" thresholdCount="1" thresholdWindow="0" thresholdAction="disable"/>
              <collectionProcessCompleteErrors timeout="0" additionalErrorAction="terminate"/>
            </asyncAggregateErrorConfiguration>
            
          </remoteAnalysisEngine>
        </delegates>
      </analysisEngine>
    </service>
  </deployment>
  
</analysisEngineDeploymentDescription>