<?xml version="1.0" encoding="UTF-8"?>

<!--
 Copyright (c) 2012-2013 Red Hat, Inc. and/or its affiliates.

 All rights reserved. This program and the accompanying materials
 are made available under the terms of the Eclipse Public License v1.0
 which accompanies this distribution, and is available at
 http://www.eclipse.org/legal/epl-v10.html

 Contributors:
 Cheng Fang - Initial API and implementation
-->

<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/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>org.jboss</groupId>
        <artifactId>jboss-parent</artifactId>
        <version>10</version>
    </parent>

    <groupId>org.jberet</groupId>
    <artifactId>jberet-parent</artifactId>
    <version>1.0.2.Final</version>

    <name>jberet-parent</name>
    <description>Impl of JSR 352: Batch Applications for the Java Platform</description>

    <packaging>pom</packaging>

    <properties>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>

        <!-- the inherited version does not support forkCount or reuseForks, so override with newer version -->
        <version.surefire.plugin>2.16</version.surefire.plugin>
        <version.dependency.plugin>2.8</version.dependency.plugin>

        <!-- Dependency versions. Please keep alphabetical -->
        <version.com.fasterxml.aalto-xml>0.9.9</version.com.fasterxml.aalto-xml>
        <version.com.google.guava>13.0.1</version.com.google.guava>
        <version.com.h2database>1.3.173</version.com.h2database>
        <version.javax.enterprise>1.1</version.javax.enterprise>
        <version.javax.inject>1</version.javax.inject>
        <version.junit>4.11</version.junit>
        <version.org.codehaus.woodstox.stax2-api>3.1.3</version.org.codehaus.woodstox.stax2-api>
        <version.org.hibernate.javax.persistence.hibernate-jpa-2.1-api>1.0.0.Final</version.org.hibernate.javax.persistence.hibernate-jpa-2.1-api>
        <version.org.jboss.logging.jboss-logging>3.1.3.GA</version.org.jboss.logging.jboss-logging>
        <version.org.jboss.logging.jboss-logging-tools>1.2.0.Final</version.org.jboss.logging.jboss-logging-tools>
        <version.org.jboss.marshalling>1.4.2.Final</version.org.jboss.marshalling>
        <version.org.jboss.spec.javax.batch.jboss-batch-api_1.0_spec>1.0.0.Final
        </version.org.jboss.spec.javax.batch.jboss-batch-api_1.0_spec>
        <version.org.jboss.spec.javax.transaction.jboss-transaction-api_1.2_spec>1.0.0.Final
        </version.org.jboss.spec.javax.transaction.jboss-transaction-api_1.2_spec>
        <version.org.jboss.weld.weld>2.1.1.Final</version.org.jboss.weld.weld>
        <version.org.jboss.weld.weld-se>2.1.1.Final</version.org.jboss.weld.weld-se>
        <version.net.sf.supercsv>2.1.0</version.net.sf.supercsv>
        <version.com.fasterxml.jackson>2.3.1</version.com.fasterxml.jackson>
        <version.org.mongodb>2.12.0-rc0</version.org.mongodb>
        <version.org.mongojack>2.0.0</version.org.mongojack>
    </properties>

    <modules>
        <module>jberet-core</module>
        <module>jberet-se</module>
        <module>test-apps</module>
        <module>tck-porting-impl</module>
        <module>jberet-distribution</module>
        <module>jberet-jpa-repository</module>
        <module>jberet-support</module>
    </modules>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-release-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-failsafe-plugin</artifactId>
                <executions>
                    <execution>
                        <goals>
                            <goal>integration-test</goal>
                            <goal>verify</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <!-- Only generate skeleton properties for INFO or higher -->
                    <compilerArgument>-Aorg.jboss.logging.tools.level=INFO</compilerArgument>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <configuration>
                    <excludes>
                        <!-- Exclude i18n properties files -->
                        <exclude>**/*.i18n.properties</exclude>
                    </excludes>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-source-plugin</artifactId>
                <configuration>
                    <skipSource>true</skipSource>
                </configuration>
            </plugin>
        </plugins>
    </build>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.jboss.spec.javax.batch</groupId>
                <artifactId>jboss-batch-api_1.0_spec</artifactId>
                <version>${version.org.jboss.spec.javax.batch.jboss-batch-api_1.0_spec}</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <groupId>javax.inject</groupId>
                <artifactId>javax.inject</artifactId>
                <version>${version.javax.inject}</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <groupId>javax.enterprise</groupId>
                <artifactId>cdi-api</artifactId>
                <version>${version.javax.enterprise}</version>
                <scope>provided</scope>
                <exclusions>
                    <exclusion>
                        <groupId>javax.el</groupId>
                        <artifactId>el-api</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.jboss.spec.javax.interceptor</groupId>
                        <artifactId>jboss-interceptors-api_1.1_spec</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>javax.annotation</groupId>
                        <artifactId>jsr250-api</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.hibernate.javax.persistence</groupId>
                <artifactId>hibernate-jpa-2.1-api</artifactId>
                <version>${version.org.hibernate.javax.persistence.hibernate-jpa-2.1-api}</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <groupId>org.jboss.logging</groupId>
                <artifactId>jboss-logging</artifactId>
                <version>${version.org.jboss.logging.jboss-logging}</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <groupId>org.jboss.logging</groupId>
                <artifactId>jboss-logging-processor</artifactId>
                <version>${version.org.jboss.logging.jboss-logging-tools}</version>
                <!-- Only needed during build time for the annotation processor -->
                <scope>provided</scope>
            </dependency>
            <dependency>
                <groupId>org.jboss.marshalling</groupId>
                <artifactId>jboss-marshalling</artifactId>
                <version>${version.org.jboss.marshalling}</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <groupId>org.jboss.spec.javax.transaction</groupId>
                <artifactId>jboss-transaction-api_1.2_spec</artifactId>
                <version>${version.org.jboss.spec.javax.transaction.jboss-transaction-api_1.2_spec}</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <groupId>org.jboss.weld</groupId>
                <artifactId>weld-core</artifactId>
                <version>${version.org.jboss.weld.weld}</version>
                <scope>provided</scope>
                <exclusions>
                    <exclusion>
                        <groupId>org.jboss.weld</groupId>
                        <artifactId>weld-core-impl</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.jboss.weld</groupId>
                        <artifactId>weld-core-jsf</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.jboss.weld.se</groupId>
                <artifactId>weld-se</artifactId>
                <version>${version.org.jboss.weld.weld-se}</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <groupId>com.h2database</groupId>
                <artifactId>h2</artifactId>
                <version>${version.com.h2database}</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <groupId>com.google.guava</groupId>
                <artifactId>guava</artifactId>
                <version>${version.com.google.guava}</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <groupId>com.fasterxml</groupId>
                <artifactId>aalto-xml</artifactId>
                <version>${version.com.fasterxml.aalto-xml}</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <groupId>org.codehaus.woodstox</groupId>
                <artifactId>stax2-api</artifactId>
                <version>${version.org.codehaus.woodstox.stax2-api}</version>
                <scope>provided</scope>
            </dependency>

            <!-- MongoDB Dependencies -->
            <dependency>
                <groupId>org.mongodb</groupId>
                <artifactId>mongo-java-driver</artifactId>
                <version>${version.org.mongodb}</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <groupId>org.mongojack</groupId>
                <artifactId>mongojack</artifactId>
                <version>${version.org.mongojack}</version>
                <scope>provided</scope>
                <exclusions>
                    <exclusion>
                        <groupId>javax.persistence</groupId>
                        <artifactId>persistence-api</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <!-- CSV Dependencies -->
            <dependency>
                <groupId>net.sf.supercsv</groupId>
                <artifactId>super-csv</artifactId>
                <version>${version.net.sf.supercsv}</version>
                <scope>provided</scope>
            </dependency>

            <!-- Jackson Dependencies -->
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-core</artifactId>
                <version>${version.com.fasterxml.jackson}</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-databind</artifactId>
                <version>${version.com.fasterxml.jackson}</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-annotations</artifactId>
                <version>${version.com.fasterxml.jackson}</version>
                <scope>provided</scope>
            </dependency>

            <!-- Jackson XML Dependencies -->
            <dependency>
                <groupId>com.fasterxml.jackson.dataformat</groupId>
                <artifactId>jackson-dataformat-xml</artifactId>
                <version>${version.com.fasterxml.jackson}</version>
                <scope>provided</scope>
            </dependency>

            <!--  Include this dependency if JAXB annotation introspector is needed -->
            <dependency>
                <groupId>com.fasterxml.jackson.module</groupId>
                <artifactId>jackson-module-jaxb-annotations</artifactId>
                <version>${version.com.fasterxml.jackson}</version>
                <scope>provided</scope>
            </dependency>

            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>${version.junit}</version>
                <scope>test</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <dependencies>
        <dependency>
            <groupId>org.jboss.spec.javax.batch</groupId>
            <artifactId>jboss-batch-api_1.0_spec</artifactId>
        </dependency>
        <dependency>
            <groupId>javax.inject</groupId>
            <artifactId>javax.inject</artifactId>
        </dependency>
        <dependency>
            <groupId>javax.enterprise</groupId>
            <artifactId>cdi-api</artifactId>
        </dependency>
        <dependency>
            <groupId>org.jboss.logging</groupId>
            <artifactId>jboss-logging-processor</artifactId>
        </dependency>
        <dependency>
            <groupId>org.jboss.logging</groupId>
            <artifactId>jboss-logging</artifactId>
        </dependency>
        <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
        </dependency>
        <dependency>
            <groupId>com.google.guava</groupId>
            <artifactId>guava</artifactId>
        </dependency>
    </dependencies>

    <repositories>
        <repository>
            <id>central</id>
            <url>http://repo1.maven.org/maven2/</url>
        </repository>
        <repository>
            <id>jboss-public-repository-group</id>
            <name>JBoss Public Repository Group</name>
            <url>http://repository.jboss.org/nexus/content/groups/public/</url>
            <layout>default</layout>
            <releases>
                <enabled>true</enabled>
                <updatePolicy>never</updatePolicy>
            </releases>
            <snapshots>
                <enabled>true</enabled>
                <updatePolicy>never</updatePolicy>
            </snapshots>
        </repository>
    </repositories>

    <pluginRepositories>
        <pluginRepository>
            <id>jboss-public-repository-group</id>
            <name>JBoss Public Repository Group</name>
            <url>http://repository.jboss.org/nexus/content/groups/public/</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </pluginRepository>
    </pluginRepositories>

    <profiles>
        <profile>
            <id>release</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-source-plugin</artifactId>
                        <configuration>
                            <skipSource>false</skipSource>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>

    <scm>
        <connection>scm:git:https://github.com/jberet/jsr352.git</connection>
        <url>scm:git:https://github.com/jberet/jsr352.git</url>
        <developerConnection>scm:git:https://github.com/jberet/jsr352.git</developerConnection>
    </scm>

    <issueManagement>
        <system>Jira</system>
        <url>https://issues.jboss.org/browse/JBERET</url>
    </issueManagement>
</project>
