<!--
  ~ Copyright (c) 2012-2013, Batu Alp Ceylan
  ~
  ~ This copyrighted material is made available to anyone wishing to use, modify,
  ~ copy, or redistribute it subject to the terms and conditions of the GNU
  ~ Lesser General Public License, as published by the Free Software Foundation.
  ~
  ~ This program is distributed in the hope that it will be useful,
  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
  ~ or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License
  ~ for more details.
  ~
  ~ You should have received a copy of the GNU Lesser General Public License
  ~ along with this distribution; if not, write to:
  ~ Free Software Foundation, Inc.
  ~ 51 Franklin Street, Fifth Floor
  ~ Boston, MA  02110-1301  USA
  -->

<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>
		<artifactId>batoo-jpa-parent</artifactId>
		<groupId>org.batoo.jpa</groupId>
		<version>2.0.1.2</version>
	</parent>

	<packaging>bundle</packaging>

	<artifactId>batoo-jpa</artifactId>
	<name>Batoo Persistence Core</name>

	<build>
		<testResources>
			<testResource>
				<directory>src/test/java</directory>
			</testResource>
			<testResource>
				<directory>src/test/resources</directory>
				<includes>
					<include>**/**</include>
				</includes>
			</testResource>
		</testResources>

		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-source-plugin</artifactId>
				<version>2.2</version>
				<executions>
					<execution>
						<id>attach-sources</id>
						<goals>
							<goal>jar-no-fork</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

			<plugin>
				<groupId>org.apache.felix</groupId>
				<artifactId>maven-bundle-plugin</artifactId>
				<version>2.3.7</version>
				<extensions>true</extensions>
				<configuration>
					<instructions>
						<Bundle-SymbolicName>${project.groupId}.${project.artifactId}</Bundle-SymbolicName>
						<Bundle-Name>${project.artifactId}</Bundle-Name>
						<Bundle-Version>${project.version}</Bundle-Version>
						<Bundle-Activator>org.batoo.jpa.core.osgi.PersistenceActivator</Bundle-Activator>
						<Export-Package>
							org.batoo.*
						</Export-Package>
						<Import-Package>
							com.jolbox.bonecp;resolution:=optional,
							org.objectweb.asm.*;version="[3.3,4)",
							!org.batoo.*,
							!sun.*,
							*
						</Import-Package>
					</instructions>
				</configuration>
			</plugin>


        </plugins>
    </build>

    <dependencies>
		<!-- Internal Dependencies -->
		<dependency>
			<groupId>org.batoo.jpa</groupId>
			<artifactId>persistence-api</artifactId>
			<scope>provided</scope>
		</dependency>

		<dependency>
			<groupId>javax.transaction</groupId>
			<artifactId>jta</artifactId>
			<version>1.1</version>
			<scope>provided</scope>
		</dependency>

		<!-- Validation -->
		<dependency>
			<groupId>javax.validation</groupId>
			<artifactId>validation-api</artifactId>
			<scope>provided</scope>
		</dependency>

		<!-- ANTLR -->
		<dependency>
			<groupId>org.antlr</groupId>
			<artifactId>antlr-runtime</artifactId>
			<exclusions>
				<exclusion>
					<artifactId>stringtemplate</artifactId>
					<groupId>org.antlr</groupId>
				</exclusion>
				<exclusion>
					<artifactId>antlr</artifactId>
					<groupId>antlr</groupId>
				</exclusion>
			</exclusions>
		</dependency>

		<!-- BoneCP -->
		<dependency>
			<groupId>com.jolbox</groupId>
			<artifactId>bonecp</artifactId>
			<scope>provided</scope>
		</dependency>

		<!-- ASM -->
		<dependency>
			<groupId>asm</groupId>
			<artifactId>asm</artifactId>
		</dependency>

		<!-- JAXB -->
		<dependency>
			<groupId>javax.xml.bind</groupId>
			<artifactId>jaxb-api</artifactId>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>javax.xml</groupId>
			<artifactId>jaxb-impl</artifactId>
			<scope>provided</scope>
		</dependency>

		<!-- Logging -->
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-api</artifactId>
		</dependency>

		<!-- Utils -->
		<dependency>
			<groupId>com.google.guava</groupId>
			<artifactId>guava</artifactId>
			<exclusions>
				<exclusion>
					<artifactId>jsr305</artifactId>
					<groupId>com.google.code.findbugs</groupId>
				</exclusion>
			</exclusions>
		</dependency>

        <!-- JBoss SPI -->
        <dependency>
            <groupId>org.jboss.as</groupId>
            <artifactId>jboss-as-jpa-spi</artifactId>
            <version>7.1.1.Final</version>
            <scope>provided</scope>
        </dependency>

        <dependency>
			<groupId>commons-dbutils</groupId>
			<artifactId>commons-dbutils</artifactId>
		</dependency>
		<dependency>
			<groupId>commons-io</groupId>
			<artifactId>commons-io</artifactId>
		</dependency>
		<dependency>
			<groupId>commons-lang</groupId>
			<artifactId>commons-lang</artifactId>
		</dependency>

		<!-- Test -->
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-log4j12</artifactId>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.apache.bval</groupId>
			<artifactId>bval-jsr303</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.bval</groupId>
			<artifactId>bval-core</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-lang3</artifactId>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>postgresql</groupId>
			<artifactId>postgresql</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>hsqldb</groupId>
			<artifactId>hsqldb</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>net.sourceforge.jtds</groupId>
			<artifactId>jtds</artifactId>
			<scope>test</scope>
		</dependency>
		<!--  Open only for testing
		<dependency>
			<groupId>com.microsoft.sqlserver</groupId>
			<artifactId>sqljdbc4</artifactId>
			<version>3.0</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>com.oracle</groupId>
			<artifactId>ojdbc16</artifactId>
			<version>11.2.0.3</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>sybase.jdbc.sqlanywhere</groupId>
			<artifactId>sajdbc</artifactId>
			<version>12.0.0</version>
			<scope>test</scope>
		</dependency>
		-->
		<dependency>
			<groupId>com.google.code.gson</groupId>
			<artifactId>gson</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.derby</groupId>
			<artifactId>derby</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>com.h2database</groupId>
			<artifactId>h2</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>commons-beanutils</groupId>
			<artifactId>commons-beanutils</artifactId>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.osgi</groupId>
			<artifactId>org.osgi.core</artifactId>
			<version>4.3.0</version>
			<scope>provided</scope>
		</dependency>

	</dependencies>
    <profiles>
        <profile>
            <id>generate-parser</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.antlr</groupId>
                        <artifactId>antlr3-maven-plugin</artifactId>
                        <version>3.4</version>
                        <executions>
                            <execution>
                                <goals>
                                    <goal>antlr</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <groupId>org.codehaus.mojo</groupId>
                        <artifactId>jaxb2-maven-plugin</artifactId>
                        <version>1.5</version>
                        <configuration>
                            <bindingDirectory>${project.basedir}/src/main/resources/xjb</bindingDirectory>
                            <bindingFiles>spec.xjb</bindingFiles>
                            <schemaDirectory>${project.basedir}/src/main/resources/xsd</schemaDirectory>
                            <schemaFiles>persistence_2_0.xsd</schemaFiles>
                            <extension>true</extension>
                        </configuration>
                        <executions>
                            <execution>
                                <id>xjc</id>
                                <goals>
                                    <goal>xjc</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>

                </plugins>
            </build>
        </profile>

        <profile>
            <id>run-test</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-surefire-plugin</artifactId>
                        <configuration combine.self="override">
                            <skip>false</skip>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>

    </profiles>
</project>
