<!--
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.    
-->

<assembly>
  <id>bin</id>
  <formats>
    <format>tar.gz</format>
    <format>zip</format>
  </formats>

  <includeBaseDirectory>true</includeBaseDirectory>

  <baseDirectory>apache-uima/addons</baseDirectory>

  <fileSets>  
  <!-- incorporate base-bin's from all sub projects -->
  
    <!-- AlchemyAPIAnnotator -->

    <fileSet>
      <outputDirectory>annotator/AlchemyAPIAnnotator</outputDirectory>
      <directory>AlchemyAPIAnnotator/target/base-bin</directory>
      <excludes><exclude>**/*.sh</exclude></excludes>
      <fileMode>644</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>
    <fileSet>
      <outputDirectory>annotator/AlchemyAPIAnnotator</outputDirectory>
      <directory>AlchemyAPIAnnotator/target/base-bin</directory>
      <includes><include>**/*.sh</include></includes>
      <fileMode>755</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>

    <!-- BSFAnnotator -->

    <fileSet>
      <outputDirectory>annotator/BSFAnnotator</outputDirectory>
      <directory>BSFAnnotator/target/base-bin</directory>
      <excludes><exclude>**/*.sh</exclude></excludes>
      <fileMode>644</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>
    <fileSet>
      <outputDirectory>annotator/BSFAnnotator</outputDirectory>
      <directory>BSFAnnotator/target/base-bin</directory>
      <includes><include>**/*.sh</include></includes>
      <fileMode>755</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>

    <!-- ConceptMapper -->

    <fileSet>
      <outputDirectory>annotator/ConceptMapper</outputDirectory>
      <directory>ConceptMapper/target/base-bin</directory>
      <excludes><exclude>**/*.sh</exclude></excludes>
      <fileMode>644</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>
    <fileSet>
      <outputDirectory>annotator/ConceptMapper</outputDirectory>
      <directory>ConceptMapper/target/base-bin</directory>
      <includes><include>**/*.sh</include></includes>
      <fileMode>755</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>

    <!-- ConfigurableFeatureExtractor -->

    <fileSet>
      <outputDirectory>annotator/ConfigurableFeatureExtractor</outputDirectory>
      <directory>ConfigurableFeatureExtractor/target/base-bin</directory>
      <excludes><exclude>**/*.sh</exclude></excludes>
      <fileMode>644</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>
    <fileSet>
      <outputDirectory>annotator/ConfigurableFeatureExtractor</outputDirectory>
      <directory>ConfigurableFeatureExtractor/target/base-bin</directory>
      <includes><include>**/*.sh</include></includes>
      <fileMode>755</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>

    <!-- DictionaryAnnotator -->

    <fileSet>
      <outputDirectory>annotator/DictionaryAnnotator</outputDirectory>
      <directory>DictionaryAnnotator/target/base-bin</directory>
      <excludes><exclude>**/*.sh</exclude></excludes>
      <fileMode>644</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>
    <fileSet>
      <outputDirectory>annotator/DictionaryAnnotator</outputDirectory>
      <directory>DictionaryAnnotator/target/base-bin</directory>
      <includes><include>**/*.sh</include></includes>
      <fileMode>755</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>

    <!-- FsVariables -->

    <fileSet>
      <outputDirectory>FsVariables</outputDirectory>
      <directory>FsVariables/target/base-bin</directory>
      <excludes><exclude>**/*.sh</exclude></excludes>
      <fileMode>644</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>
    <fileSet>
      <outputDirectory>FsVariables</outputDirectory>
      <directory>FsVariables/target/base-bin</directory>
      <includes><include>**/*.sh</include></includes>
      <fileMode>755</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>

    <!-- Lucas -->

    <fileSet>
      <outputDirectory>annotator/Lucas</outputDirectory>
      <directory>Lucas/target/base-bin</directory>
      <excludes><exclude>**/*.sh</exclude></excludes>
      <fileMode>644</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>
    <fileSet>
      <outputDirectory>annotator/Lucas</outputDirectory>
      <directory>Lucas/target/base-bin</directory>
      <includes><include>**/*.sh</include></includes>
      <fileMode>755</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>

    <!-- OpenCalaisAnnotator -->

    <fileSet>
      <outputDirectory>annotator/OpenCalaisAnnotator</outputDirectory>
      <directory>OpenCalaisAnnotator/target/base-bin</directory>
      <excludes><exclude>**/*.sh</exclude></excludes>
      <fileMode>644</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>
    <fileSet>
      <outputDirectory>annotator/OpenCalaisAnnotator</outputDirectory>
      <directory>OpenCalaisAnnotator/target/base-bin</directory>
      <includes><include>**/*.sh</include></includes>
      <fileMode>755</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>

    <!-- PearPackagingAntTask -->

    <fileSet>
      <outputDirectory>PearPackagingAntTask</outputDirectory>
      <directory>PearPackagingAntTask/target/base-bin</directory>
      <excludes><exclude>**/*.sh</exclude></excludes>
      <fileMode>644</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>
    <fileSet>
      <outputDirectory>PearPackagingAntTask</outputDirectory>
      <directory>PearPackagingAntTask/target/base-bin</directory>
      <includes><include>**/*.sh</include></includes>
      <fileMode>755</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>

    <!-- RegularExpressionAnnotator -->

    <fileSet>
      <outputDirectory>annotator/RegularExpressionAnnotator</outputDirectory>
      <directory>RegularExpressionAnnotator/target/base-bin</directory>
      <excludes><exclude>**/*.sh</exclude></excludes>
      <fileMode>644</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>
    <fileSet>
      <outputDirectory>annotator/RegularExpressionAnnotator</outputDirectory>
      <directory>RegularExpressionAnnotator/target/base-bin</directory>
      <includes><include>**/*.sh</include></includes>
      <fileMode>755</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>

    <!-- SimpleServer -->

    <fileSet>
      <outputDirectory>SimpleServer</outputDirectory>
      <directory>SimpleServer/target/base-bin</directory>
      <excludes><exclude>**/*.sh</exclude></excludes>
      <fileMode>644</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>
    <fileSet>
      <outputDirectory>SimpleServer</outputDirectory>
      <directory>SimpleServer/target/base-bin</directory>
      <includes><include>**/*.sh</include></includes>
      <fileMode>755</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>

    <!-- SnowballAnnotator -->

    <fileSet>
      <outputDirectory>annotator/SnowballAnnotator</outputDirectory>
      <directory>SnowballAnnotator/target/base-bin</directory>
      <excludes><exclude>**/*.sh</exclude></excludes>
      <fileMode>644</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>
    <fileSet>
      <outputDirectory>annotator/SnowballAnnotator</outputDirectory>
      <directory>SnowballAnnotator/target/base-bin</directory>
      <includes><include>**/*.sh</include></includes>
      <fileMode>755</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>

    <!-- Solrcas -->

    <fileSet>
      <outputDirectory>annotator/Solrcas</outputDirectory>
      <directory>Solrcas/target/base-bin</directory>
      <excludes><exclude>**/*.sh</exclude></excludes>
      <fileMode>644</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>
    <fileSet>
      <outputDirectory>annotator/Solrcas</outputDirectory>
      <directory>Solrcas/target/base-bin</directory>
      <includes><include>**/*.sh</include></includes>
      <fileMode>755</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>

    <!-- Tagger -->

    <fileSet>
      <outputDirectory>annotator/Tagger</outputDirectory>
      <directory>Tagger/target/base-bin</directory>
      <excludes><exclude>**/*.sh</exclude></excludes>
      <fileMode>644</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>
    <fileSet>
      <outputDirectory>annotator/Tagger</outputDirectory>
      <directory>Tagger/target/base-bin</directory>
      <includes><include>**/*.sh</include></includes>
      <fileMode>755</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>

    <!-- TikaAnnotator -->

    <fileSet>
      <outputDirectory>annotator/TikaAnnotator</outputDirectory>
      <directory>TikaAnnotator/target/base-bin</directory>
      <excludes><exclude>**/*.sh</exclude></excludes>
      <fileMode>644</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>
    <fileSet>
      <outputDirectory>annotator/TikaAnnotator</outputDirectory>
      <directory>TikaAnnotator/target/base-bin</directory>
      <includes><include>**/*.sh</include></includes>
      <fileMode>755</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>

    <!-- WhitespaceTokenizer -->

    <fileSet>
      <outputDirectory>annotator/WhitespaceTokenizer</outputDirectory>
      <directory>WhitespaceTokenizer/target/base-bin</directory>
      <excludes><exclude>**/*.sh</exclude></excludes>
      <fileMode>644</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>
    <fileSet>
      <outputDirectory>annotator/WhitespaceTokenizer</outputDirectory>
      <directory>WhitespaceTokenizer/target/base-bin</directory>
      <includes><include>**/*.sh</include></includes>
      <fileMode>755</fileMode>
      <directoryMode>755</directoryMode>
    </fileSet>

    <!-- copy bin distr license and notice -->
    <fileSet>
      <directory>src/main/readme</directory>
      <outputDirectory/>
      <fileMode>644</fileMode>
      <directoryMode>755</directoryMode>      
    </fileSet>
    
    <!-- copy issuesFixed and README.txt -->
    <fileSet>
      <directory/>
      <outputDirectory/>
      <includes>
        <include>issuesFixed/**</include>
        <include>README*</include>
        <include>readme*</include>
        <include>RELEASE_NOTES*</include>
      </includes>
      <fileMode>644</fileMode>
      <directoryMode>755</directoryMode>      
    </fileSet>    

  </fileSets>
</assembly>