<?xml version="1.0" encoding="UTF-8"?>
<!--
  Copyright 2002-2004 The Apache Software Foundation

  Licensed 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.
-->
<project>
  <extend>../parent-project.xml</extend>
  <pomVersion>3</pomVersion>
  <groupId>commons-jelly</groupId>
  <currentVersion>1.0-SNAPSHOT</currentVersion>
  
  <organization>
    <name>Apache Software Foundation</name>
    <url>http://jakarta.apache.org/</url>
    <logo>http://jakarta.apache.org/images/jakarta-logo.gif</logo>
  </organization>
  <inceptionYear>2002</inceptionYear>
  <package>org.apache.commons.jelly.tags.ant</package>
  <logo>/images/logo.gif</logo>
  <!-- Gump integration -->
  <gumpRepositoryId>jakarta</gumpRepositoryId>

  <description>
      This is a Jelly tag.
  </description>
  <shortDescription>Commons Jelly Tag Library</shortDescription>
  
  <url>http://jakarta.apache.org/commons/jelly/libs/${pom.id.substring(33)}/index.html</url>
  <issueTrackingUrl>http://issues.apache.org/jira/secure/BrowseProject.jspa?id=10012</issueTrackingUrl>
  
  <siteAddress>jakarta.apache.org</siteAddress>
  <siteDirectory>/www/jakarta.apache.org/commons/jelly/libs/${pom.id.substring(33)}/</siteDirectory>
  <distributionDirectory>/www/jakarta.apache.org/builds/jakarta-commons/jelly/jelly-tags/${pom.id.substring(33)}/</distributionDirectory>
  
  <repository>
    <connection>scm:cvs:pserver:anoncvs@cvs.apache.org:/home/cvspublic:jakarta-commons/jelly/jelly-tags/${pom.id.substring(33)}</connection>
    <developerConnection>scm:cvs:ext:${maven.username}@cvs.apache.org:/home/cvs:jakarta-commons/jelly/jelly-tags/${pom.id.substring(33)}</developerConnection>
    <url>http://cvs.apache.org/viewcvs/jakarta-commons/jelly/jelly-tags/${pom.id.substring(33)}/</url>
  </repository>
  
  
  <mailingLists>
    <mailingList>
      <name>Commons Dev List</name>
      <subscribe>commons-dev-subscribe@jakarta.apache.org</subscribe>
      <unsubscribe>commons-dev-unsubscribe@jakarta.apache.org</unsubscribe>
      <archive>http://mail-archives.apache.org/eyebrowse/SummarizeList?listName=commons-dev@jakarta.apache.org</archive>
    </mailingList>
    <mailingList>
      <name>Commons User List</name>
      <subscribe>commons-user-subscribe@jakarta.apache.org</subscribe>
      <unsubscribe>commons-user-unsubscribe@jakarta.apache.org</unsubscribe>
      <archive>http://mail-archives.apache.org/eyebrowse/SummarizeList?listName=commons-user@jakarta.apache.org</archive>
    </mailingList>
  </mailingLists>
  
  <developers>
    <developer>
      <name>James Strachan</name>
      <id>jstrachan</id>
      <email>jstrachan@apache.org</email>
      <organization>SpiritSoft, Inc.</organization>
    </developer>
    <developer>
      <name>Geir Magnusson Jr.</name>
      <id>geirm</id>
      <email>geirm@adeptra.com</email>
      <organization>Adeptra, Inc.</organization>
    </developer>
    <developer>
      <name>Bob McWhirter</name>
      <id>werken</id>
      <email>bob@eng.werken.com</email>
      <organization>The Werken Company</organization>
    </developer>
    <developer>
      <name>dIon Gillard</name>
      <id>dion</id>
      <email>dion@multitask.com.au</email>
      <organization>Multitask Consulting</organization>
      <roles>
        <role>Interested party</role>
      </roles>
    </developer>
    <developer>
      <name>Morgan Delagrange</name>
      <id>morgand</id>
      <email>morgand@apache.org</email>
    </developer>
    <developer>
      <name>Rodney Waldhoff</name>
      <id>rwaldhoff</id>
      <email>rwaldhoff@apache.org</email>
    </developer>
    <developer>
      <name>Robert Burrell Donkin</name>
      <id>rdonkin</id>
      <email>rdonkin@apache.org</email>
    </developer>
  </developers>

  <contributors>
    <contributor>
      <name>Martin van dem Bemt</name>
      <email>mvdb@mvdb.com</email>
    </contributor>
    <contributor>
      <name>Erik Fransen</name>
      <email>erik167@xs4all.nl</email>
      <roles>
          <role>Logo designer</role>
      </roles>
    </contributor>
    <contributor>
      <name>Calvin Yu</name>
    </contributor>
    <contributor>
      <name>Stephen Haberman</name>
      <email>stephenh@chase3000.com</email>
    </contributor>
    <contributor>
      <name>Vinay Chandran</name>
      <email>sahilvinay@yahoo.com</email>
      <roles>
          <role>Developer</role>
      </roles>
    </contributor>
    <contributor>
      <name>Theo Niemeijer</name>
    </contributor>
    <contributor>
      <name>Joe Walnes</name>
      <email>joew@thoughtworks.com</email>
      <organization>ThoughtWorks, Inc.</organization>
      <roles>
          <role>Inventor of Mock Tags</role>
      </roles>
    </contributor>
    <contributor>
      <name>Otto von Wachter</name>
      <email>vonwao@yahoo.com</email>
      <organization></organization>
      <roles>
          <role>Author of the tutorials</role>
          <role>Developer</role>
      </roles>
    </contributor>
    <contributor>
      <name>Robert Leftwich</name>
      <email>robert@leftwich.info</email>
      <roles>
          <role>Developer</role>
      </roles>
    </contributor>
    <contributor>
      <name>Paul Libbrecht</name>
      <email>paul@activemath.org</email>
      <roles>
          <role>Developer</role>
      </roles>
    </contributor>    
    <contributor>
      <name>Jim Birchfield</name>
      <email>jim.birchfield@genscape.com</email>
      <organization>Genscape, Inc.</organization>
      <roles>
          <role>Developer</role>
      </roles>
    </contributor>    
    <contributor>
      <name>Jason Horman</name>
      <email>jhorman@musicmatch.com</email>
      <roles>
          <role>Developer</role>
      </roles>
    </contributor>    
    <contributor>
      <name>Tim Anderson</name>
      <email>tima@intalio.com</email>
      <organization>Intalio, Inc.</organization>
      <roles>
          <role>Developer</role>
      </roles>
    </contributor>    
    <contributor>
      <name>Theo Niemeijer</name>
      <email>theo.niemeijer@getthere.nl</email>
      <organization></organization>
      <roles>
          <role>Developer</role>
      </roles>
    </contributor>    
    <contributor>
      <name>J. Matthew Pryor</name>
      <email>matthew_pryor@versata.com</email>
      <organization></organization>
      <roles>
          <role>Developer</role>
      </roles>
    </contributor>        
    <contributor>
      <name>Knut Wannheden</name>
      <email></email>
      <organization></organization>
      <roles>
          <role>Developer</role>
      </roles>
    </contributor>        
    <contributor>
      <name>Kelvin Tan</name>
      <email></email>
      <organization></organization>
      <roles>
          <role>Developer</role>
      </roles>
    </contributor>        
    <contributor>
      <name>Todd Jonker</name>
      <email></email>
      <organization></organization>
      <roles>
          <role>Developer</role>
      </roles>
    </contributor>            
  </contributors>
    
  <dependencies>
 
    
    <dependency>
      <id>xml-apis</id>
      <version>1.0.b2</version>
    </dependency>
    
    <dependency>
      <id>commons-beanutils</id>
      <version>1.6</version>
    </dependency>
    
    <dependency>
      <id>commons-collections</id>
      <version>2.1</version>
    </dependency>
    
    <dependency>
      <id>commons-jexl</id>
      <version>1.0</version>
    </dependency>
    
    <dependency>
      <id>commons-jelly</id>
      <version>SNAPSHOT</version>
    </dependency>
    
    <dependency>
      <id>commons-logging</id>
      <version>1.0.3</version>
    </dependency>
    
    <dependency>
      <id>dom4j</id>
      <version>1.5</version>
    </dependency>

    <dependency>
      <id>jaxen</id>
      <version>1.1-beta-2</version>
    </dependency>

    <dependency>
      <id>xerces</id>
      <version>2.2.1</version>
      <properties>
        <gump.project>xml-xerces</gump.project>
      </properties>
    </dependency>
  </dependencies>
  
  <build>
    <nagEmailAddress>commons-dev@jakarta.apache.org</nagEmailAddress>
    <sourceDirectory>src/java</sourceDirectory>
    <unitTestSourceDirectory>src/test</unitTestSourceDirectory>

    <!-- Unit test classes -->
    <unitTest>
      <includes>
        <include>**/Test*.java</include>
      </includes>
      <resources>
          <resource>
              <directory>src/test</directory>
              <includes>
                  <include>**/*.jelly</include>
                  <include>**/*.xml</include>
                  <include>**/*.xsl</include>
                  <include>**/*.rng</include>
                  <include>**/*.dtd</include>
                  <include>**/*.properties</include>
                  <include>**/*.html</include>
              </includes>
          </resource>
      </resources>
    </unitTest>

    <!-- Resources that are packaged up inside the JAR file -->
    <resources>        
        <resource>        
            <directory>src/java</directory>
            <includes>
                <include>**/*.properties</include>
            </includes>
        </resource>
    </resources>
  
  </build>

  <reports>
    <report>maven-changelog-plugin</report>
    <report>maven-changes-plugin</report>
    <report>maven-checkstyle-plugin</report>
    <report>maven-developer-activity-plugin</report>
    <report>maven-file-activity-plugin</report>
    <report>maven-javadoc-plugin</report>
    <report>maven-jcoverage-plugin</report>
    <report>maven-jdepend-plugin</report>
    <report>maven-jellydoc-plugin</report>
    <report>maven-junit-report-plugin</report>
    <report>maven-jxr-plugin</report>
    <report>maven-license-plugin</report>
    <report>maven-pmd-plugin</report>
    <report>maven-tasklist-plugin</report>
  </reports>

</project>
