<project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
                        http://maven.apache.org/maven-v4_0_0.xsd">

    <modelVersion>4.0.0</modelVersion>
    <groupId>org.codehaus.castor</groupId>
    <artifactId>castor</artifactId>
    <version>1.3</version>
    <packaging>pom</packaging>
    
    <modules>
        <module>core</module>
        <module>xml</module>
        <module>schema</module>
        <module>codegen</module>
        <module>ddlgen</module>
        <module>anttask</module>
        <module>cpa</module>
        <module>cpactf</module>

        <module>diff</module>
        <module>xmlctf-framework</module>
        
        <module>maven-plugins</module>
        
        <module>cpa-testcase-archetype</module>
        <module>codegen-testcase-archetype</module>
        
        <module>jdo-extensions-it</module>
        
        <!-- <module>xmlctf</module>  -->
        <!-- module>fragmentmapper</module> -->
    </modules>
     
    <name>Castor</name>
    <url>http://castor.org</url>

    <issueManagement>
        <system>Jira</system>
        <url>http://jira.codehaus.org/browse/CASTOR</url>
    </issueManagement>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.5</source>
                    <target>1.5</target>
                </configuration>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <configuration>
                    <archive>
                        <manifestFile>src/main/resources/META-INF/MANIFEST.MF</manifestFile>
                    </archive>
                </configuration>
            </plugin>

<!--
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-clover-plugin</artifactId>
                <version>2.1</version>
                <configuration>
                  <jdk>1.4</jdk>
                  <cloverDatabase>target/clover-db</cloverDatabase>
                  <licenseLocation>${basedir}/src/etc/CLOVER.LICENSE</licenseLocation>
                </configuration>
                <executions>
                  <execution>
                    <phase>pre-site</phase>
                    <goals>
                      <goal>instrument</goal>
                    </goals>
                  </execution>
                </executions>
            </plugin>
-->
<!--
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-source-plugin</artifactId>
                <configuration>
                    <attach>true</attach>
                </configuration>
            </plugin>
-->            
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-source-plugin</artifactId>
                <executions>
                    <execution>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>


        </plugins>

        <extensions>
            <extension>
                <groupId>org.apache.maven.wagon</groupId>
                <artifactId>wagon-webdav</artifactId>
                <version>1.0-beta-1</version>
            </extension>
        </extensions>

    </build>

    <!--
        <build>
        <finalName>sportsbook-webapp</finalName>
        <plugins>
        <plugin>
        <artifactId>maven-surefire-plugin</artifactId>
        <configuration>
        <excludes>
        <exclude>**/TestDisplayEvents*.java</exclude>
        <exclude>**/TestMultiXXXSingle*.java</exclude>

        </excludes>
        </configuration>
        </plugin>
        </plugins>
        </build>
    -->
    <developers>
        <developer>
            <id>wguttmn</id>
            <name>Werner Guttmann</name>
            <email>wguttmn@codehaus.org</email>
            <organization>Indoqa</organization>
            <organizationUrl>http://www.indoqa.com</organizationUrl>
            <roles>
                <role>Castor JDO Lead</role>
                <role>Castor XML Lead</role>
            </roles>
            <timezone>+1</timezone>
        </developer>

        <developer>
            <name>Ralf Joachim</name>
            <email>ralf.joachim@syscon.eu</email>
            <organization>Syscon</organization>
            <roles>
                <role>Castor JDO committer</role>
            </roles>
            <timezone>+1</timezone>
        </developer>

        <developer>
            <name>Keith Visco</name>
            <email>kvisco@intalio.com</email>
            <organization>Intalio</organization>
            <roles>
                <role>Committer</role>
            </roles>
            <timezone>-5</timezone>
        </developer>

        <developer>
            <name>Bruce Snyder</name>
            <email>ferret@frii.com</email>
            <organization>Jailey Solutions</organization>
            <roles>
                <role>Committer</role>
            </roles>
            <timezone>-6</timezone>
        </developer>

        <developer>
            <name>Edward Kuns</name>
            <email>edward.kuns@aspect.com</email>
            <organization>N/A</organization>
            <roles>
                <role>Committer</role>
            </roles>
            <timezone>-6</timezone>
        </developer>
        
        <developer>
            <name>Lukas Lang</name>
            <email>lukas.lang@inode.at</email>
            <organization>N/A</organization>
            <roles>
                <role>Committer</role>
            </roles>
            <timezone>+1</timezone>
        </developer>
        
    </developers>

    <mailingLists>
        <mailingList>
            <name>User mailing list</name>
            <subscribe>user-subscribe@castor.codehaus.org</subscribe>
            <unsubscribe>user-unsubscribe@castor.codehaus.org</unsubscribe>
            <post>user@castor.codehaus.org</post>
            <archive>http://archive.castor.codehaus.org/user</archive>
        </mailingList>
        <mailingList>
            <name>Development mailing list</name>
            <subscribe>dev-subscribe@castor.codehaus.org</subscribe>
            <unsubscribe>dev-unsubscribe@castor.codehaus.org</unsubscribe>
            <post>dev@castor.codehaus.org</post>
            <archive>http://archive.castor.codehaus.org/dev</archive>
        </mailingList>
        <mailingList>
            <name>Announcement mailing list</name>
            <subscribe>announce-subscribe@castor.codehaus.org</subscribe>
            <unsubscribe>announce-unsubscribe@castor.codehaus.org</unsubscribe>
            <post>announce@castor.codehaus.org</post>
            <archive>http://archive.castor.codehaus.org/announce</archive>
        </mailingList>
    </mailingLists>

    <scm>
       <connection>scm:svn:http://svn.codehaus.org/castor/castor/trunk</connection>
       <developerConnection>scm:svn:https://svn.codehaus.org/castor/castor/trunk</developerConnection>
       <url>http://svn.castor.codehaus.org/browse/castor/castor/trunk</url>
    </scm>

    <distributionManagement>
        <repository>
          <id>codehaus.org</id>
          <name>Castor Central Distribution Repository</name>
          <url>dav:https://dav.codehaus.org/repository/castor/</url>
        </repository>
        <snapshotRepository>
          <id>codehaus.org</id>
          <name>Castor Central Development Repository</name>
          <url>dav:https://dav.codehaus.org/snapshots.repository/castor/</url>
        </snapshotRepository>
        <site>
          <id>codehaus.org</id>
          <url>dav:https://dav.codehaus.org/castor/</url>
        </site>
    </distributionManagement>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>commons-logging</groupId>
                <artifactId>commons-logging</artifactId>
                <version>1.1.1</version>
            </dependency>
    
            <dependency>
                <groupId>ant</groupId>
                <artifactId>ant</artifactId>
                <version>1.6</version>
                <!--  Joachim: this must not be test otherwise subproject anttask wont even compile!
                <scope>test</scope>
                -->
            </dependency>

            <dependency>
            	<groupId>org.codehaus.castor</groupId>
            	<artifactId>spring-orm</artifactId>
            	<version>1.3-SNAPSHOT</version>
            	<scope>test</scope>
            </dependency>

            <dependency>
            	<groupId>org.springframework</groupId>
            	<artifactId>spring-beans</artifactId>
            	<version>2.5.5</version>
            	<scope>test</scope>
            </dependency>

            <dependency>
            	<groupId>org.springframework</groupId>
            	<artifactId>spring-context</artifactId>
            	<version>2.5.5</version>
            	<scope>test</scope>
            </dependency>

            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>3.8.2</version>
                <!--  Joachim: this must not be test otherwise subproject xmlctf-framework wont even compile!
                <scope>test</scope>
                -->
            </dependency>
    
            <dependency>
                <groupId>log4j</groupId>
                <artifactId>log4j</artifactId>
                <version>1.2.13</version>
                <scope>test</scope>
            </dependency>
    
            <!-- temp. removed as src/tests is not on the test compilation path -->
            <!--
                <dependency>
                <groupId>org.mockejb</groupId>
                <artifactId>mockejb</artifactId>
                <version>0.5</version>
                <optional>true</optional>
                </dependency>
            -->
    
            <dependency>
                <groupId>oro</groupId>
                <artifactId>oro</artifactId>
                <version>2.0.8</version>
                <optional>true</optional>
            </dependency>
    
            <dependency>
                <groupId>jakarta-regexp</groupId>
                <artifactId>jakarta-regexp</artifactId>
                <version>1.4</version>
                <optional>true</optional>
            </dependency>
    
            <dependency>
                <groupId>ldapsdk</groupId>
                <artifactId>ldapsdk</artifactId>
                <version>4.1</version>
                <optional>true</optional>
            </dependency>
            
            <dependency>
               <groupId>org.apache.derby</groupId>
               <artifactId>derby</artifactId>
               <version>10.4.1.3</version>
               <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>velocity</groupId>
                <artifactId>velocity</artifactId>
                <version>1.5</version>
                <optional>true</optional>
            </dependency>

	        <dependency>
	            <groupId>javax.persistence</groupId>
	            <artifactId>persistence-api</artifactId>
	            <version>1.0</version>
	        </dependency>

            <!--  module dependencies -->            
            <dependency>
                <groupId>org.codehaus.castor</groupId>
                <artifactId>castor-xml</artifactId>
                <version>1.3</version>
            </dependency>

            <dependency>
                <groupId>org.codehaus.castor</groupId>
                <artifactId>castor-xml-schema</artifactId>
                <version>1.3</version>
            </dependency>

            <dependency>
                <groupId>org.codehaus.castor</groupId>
                <artifactId>castor-codegen</artifactId>
                <version>1.3</version>
            </dependency>

            <dependency>
                <groupId>org.codehaus.castor</groupId>
                <artifactId>castor-ddlgen</artifactId>
                <version>1.3</version>
            </dependency>

            <dependency>
                <groupId>org.codehaus.castor</groupId>
                <artifactId>castor-core</artifactId>
                <version>1.3</version>
            </dependency>

            <dependency>
            	<groupId>org.codehaus.castor</groupId>
            	<artifactId>castor-tests</artifactId>
            	<version>1.3</version>
            </dependency>

            <dependency>
                <groupId>org.codehaus.castor</groupId>
                <artifactId>castor-jdo</artifactId>
                <version>1.3</version>
            </dependency>

            <dependency>
                <groupId>org.codehaus.castor</groupId>
                <artifactId>castor-testsuite-xml-framework</artifactId>
                <version>1.3</version>
            </dependency>

            <dependency>
                <groupId>org.codehaus.castor</groupId>
                <artifactId>castor-xml-diff</artifactId>
                <version>1.3</version>
            </dependency>
            
        </dependencies>
    </dependencyManagement>

    <dependencies>

		<!-- should this really be in this section ? -->
        <dependency>
            <groupId>com.cenqua.clover</groupId>
            <artifactId>clover</artifactId>
            <version>1.3.12</version>
            <scope>test</scope>
        </dependency>

    </dependencies>

    <repositories>
        <repository>
            <id>java.net</id>
            <name>java.net Maven Repository</name>
            <url>https://maven-repository.dev.java.net/nonav/repository</url>
            <layout>legacy</layout>
        </repository>
		<repository>
			<id>maven2-repository.dev.java.net</id>
			<name>Java.net Repository for Maven 2</name>
			<url>https://maven2-repository.dev.java.net/nonav/repository</url>
			<layout>default</layout>	  
		</repository>        
        <repository>
            <id>codehaus-snapshots</id>
            <name>Maven Codehaus Snapshots</name>
            <url>
                http://snapshots.repository.codehaus.org
            </url>
        </repository>
    </repositories>

    <pluginRepositories>
        <pluginRepository>
            <id>Maven Codehaus Snapshots</id>
            <url>http://snapshots.maven.codehaus.org/maven2/</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
            <releases>
                <enabled>false</enabled>
            </releases>
        </pluginRepository>
    </pluginRepositories>

    <reporting>
        <plugins>
            <plugin>
                <artifactId>maven-javadoc-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>jxr-maven-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <configuration>
                    <excludes>
                        <exclude>org/castor/tools/log4j/TestCastorAppender.java</exclude>
                        <exclude>org/castor/cache/simple/TestTimeLimited.java</exclude>
                        <exclude>org/exolab/castor/jdo/oql/LexTest.java</exclude>
                        <exclude>org/exolab/castor/jdo/oql/ParseTest.java</exclude>
                        <exclude>org/exolab/castor/jdo/drivers/TestConnectionProxies.java</exclude>
                        <exclude>org/castor/cache/TestCacheFactoryRegistry.java</exclude>
                        <exclude>**/TestAll.java</exclude>
                        <exclude>xml/**/*.java</exclude>
                        <exclude>harness/**</exclude>
                        <exclude>soak/**</exclude>
                        <exclude>jdo/**</exclude>
                        <exclude>ctf/**</exclude>
                        <!-- test harness -->
                        <exclude>org/exolab/castor/tests/framework/**</exclude>
                    </excludes>
                    <includes>
                        <include>org/exolab/castor/**/Test*.java</include>
                        <include>org/castor/**/Test*.java</include>
                        <include>org/exolab/castor/**/*Test.java</include>
                        <include>org/castor/**/*Test.java</include>

                        <!-- JDO test suite -->
                        <include>Main.java</include>
                    </includes>
                    <systemProperties>
                      <property>
                        <name>test.category</name>
                        <value>castor.mysql</value>
                      </property>
                    </systemProperties>
                </configuration>
            </plugin>

            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-surefire-report-plugin</artifactId>
            </plugin>

<!--
            <plugin>
                  <groupId>org.apache.maven.plugins</groupId>
                  <artifactId>maven-checkstyle-plugin</artifactId>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-pmd-plugin</artifactId>
                <configuration>
                    <targetjdk>1.4</targetjdk>
                    <rulesets>
                        <ruleset>/rulesets/basic.xml</ruleset>
                        <ruleset>/rulesets/controversial.xml</ruleset>
                    </rulesets>
                    <format>xml</format>
                    <linkXref>true</linkXref>
                        <sourceEncoding>utf-8</sourceEncoding>
                        <minimumTokens>100</minimumTokens>
                </configuration>
            </plugin>

            <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>changes-maven-plugin</artifactId>
            </plugin>

            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>changelog-maven-plugin</artifactId>
            </plugin>
-->
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>changes-maven-plugin</artifactId>
                <reportSets>
                    <reportSet>
                        <reports>
                            <report>changes-report</report>
                            <!--<report>jira-report</report>-->
                        </reports>
                    </reportSet>
                </reportSets>
            </plugin>

            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>taglist-maven-plugin</artifactId>
            </plugin>

<!--
            <plugin>
                <artifactId>maven-clover-plugin</artifactId>
                <version>2.1</version>
                <configuration>
                    <jdk>1.4</jdk>
                    <cloverDatabase>target/clover-db</cloverDatabase>
                    <licenseLocation>${basedir}/src/etc/CLOVER.LICENSE</licenseLocation>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>jdepend-maven-plugin</artifactId>
                <version>2.0-beta-1-SNAPSHOT</version>
            </plugin>
-->
        </plugins>
    </reporting>
    
    <ciManagement>
        <system>bamboo</system>
        <url>http://bamboo.ci.codehaus.org/browse/CASTOR</url>
    </ciManagement>
    
    <profiles>
        <!-- profile for executing all XML integration suite tests -->
        <profile>
            <id>xmltests</id>
            <modules>
                <module>xmlctf-framework</module>
                <module>maven-plugins</module>
                <module>xmlctf</module>
            </modules>            
        </profile>
        <!-- profile for executing all CPA integration suite tests -->
        <profile>
            <id>cpatests</id>
            <modules>
                <module>cpactf</module>
            </modules>            
        </profile>
        <!-- profile for executing all CPA performance suite tests -->
        <profile>
            <id>cpaptftests</id>
            <modules>
                <module>cpaptf</module>
            </modules>            
        </profile>
        <!-- profile for building and testing examples project -->
        <profile>
            <id>examples</id>
            <modules>
                <module>examples</module>
            </modules>            
        </profile>
        <profile>
            <id>javadoc</id>
            <build>
                <plugins>
                  <plugin>
                      <groupId>org.apache.maven.plugins</groupId>
                      <artifactId>maven-javadoc-plugin</artifactId>
                      <configuration>
                          <aggregate>true</aggregate>
                      </configuration>
                      <executions>
                          <execution>
                              <id>attach-javadocs</id>
                              <goals>
                                  <goal>jar</goal>
                              </goals>
                          </execution>
                      </executions>
                  </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>
    
</project>
