<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>
	<artifactId>spring-batch-core</artifactId>
	<packaging>jar</packaging>
	<name>Core</name>
	<description>
		<!--  Use CDATA to keep it on a single line in the manifest -->
		<![CDATA[Core domain for batch processing, expressing a domain of Jobs, Steps, Chunks, etc.]]>
	</description>

	<parent>
		<groupId>org.springframework.batch</groupId>
		<artifactId>spring-batch</artifactId>
		<version>1.0.0.rc1-SNAPSHOT</version>
		<relativePath>..</relativePath>
	</parent>

	<profiles>
		<profile>
			<id>clover</id>
			<activation>
				<activeByDefault>false</activeByDefault>
			</activation>
			<build>
				<plugins>
					<plugin>
						<artifactId>maven-clover-plugin</artifactId>
					</plugin>
				</plugins>
			</build>
			<reporting>
				<plugins>
					<plugin>
						<artifactId>maven-clover-plugin</artifactId>
					</plugin>
				</plugins>
			</reporting>
		</profile>
	</profiles>

	<dependencies>
		<dependency>
			<groupId>org.springframework.batch</groupId>
			<artifactId>spring-batch-infrastructure</artifactId>
			<version>${project.version}</version>
		</dependency>
		<!-- optional dependency from infrastructure -->
		<dependency>
			<groupId>hsqldb</groupId>
			<artifactId>hsqldb</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>commons-io</groupId>
			<artifactId>commons-io</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>easymock</groupId>
			<artifactId>easymock</artifactId>
		</dependency>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
		</dependency>
		<dependency>
			<groupId>cglib</groupId>
			<artifactId>cglib-nodep</artifactId>
			<scope>test</scope>
		</dependency>
		<!-- Spring Dependencies -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-aop</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-beans</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-context</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-core</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-jdbc</artifactId>
			<optional>true</optional>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-test</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-tx</artifactId>
			<optional>true</optional>
		</dependency>
		<dependency>
			<groupId>backport-util-concurrent</groupId>
			<artifactId>backport-util-concurrent</artifactId>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-antrun-plugin</artifactId>
				<executions>
					<execution>
						<id>generate-sql</id>
						<phase>generate-sources</phase>
						<configuration>
							<tasks>
								<typedef resource="foundrylogic/vpp/typedef.properties" />
								<taskdef resource="foundrylogic/vpp/taskdef.properties" />
								<!-- Scripts for DAO tests - N.B. under source control. -->
								<vppcopy todir="${basedir}/src/test/resources/org/springframework/batch/execution/repository/dao" overwrite="true">
									<config>
										<context>
											<property key="includes" value="src/main/sql" />
											<property file="${basedir}/src/main/sql/hsqldb.properties" />
										</context>
										<engine>
											<property key="velocimacro.library" value="src/main/sql/hsqldb.vpp" />
										</engine>
									</config>
									<fileset dir="${basedir}/src/main/sql" includes="*.sql.vpp" excludes="schema*" />
									<mapper type="glob" from="*.sql.vpp" to="*.sql" />
								</vppcopy>
								<!-- Reference script for HSQLDB - N.B. not under source control, but packagaed in jar. -->
								<vppcopy todir="${basedir}/target/generated-resources" overwrite="true">
									<config>
										<context>
											<property key="includes" value="src/main/sql" />
											<property file="${basedir}/src/main/sql/hsqldb.properties" />
										</context>
										<engine>
											<property key="velocimacro.library" value="src/main/sql/hsqldb.vpp" />
										</engine>
									</config>
									<fileset dir="${basedir}/src/main/sql" includes="schema.sql.vpp" />
									<mapper type="glob" from="*.sql.vpp" to="*-hsqldb.sql" />
								</vppcopy>
								<!-- Reference script for DB2 - N.B. not under source control, but packagaed in jar. -->
								<vppcopy todir="${basedir}/target/generated-resources" overwrite="true">
									<config>
										<context>
											<property key="includes" value="src/main/sql" />
											<property file="${basedir}/src/main/sql/db2.properties" />
										</context>
										<engine>
											<property key="velocimacro.library" value="src/main/sql/db2.vpp" />
										</engine>
									</config>
									<fileset dir="${basedir}/src/main/sql" includes="schema.sql.vpp" />
									<mapper type="glob" from="*.sql.vpp" to="*-db2.sql" />
								</vppcopy>
								<!-- Reference script for Derby - N.B. not under source control, but packagaed in jar. -->
								<vppcopy todir="${basedir}/target/generated-resources" overwrite="true">
									<config>
										<context>
											<property key="includes" value="src/main/sql" />
											<property file="${basedir}/src/main/sql/derby.properties" />
										</context>
										<engine>
											<property key="velocimacro.library" value="src/main/sql/derby.vpp" />
										</engine>
									</config>
									<fileset dir="${basedir}/src/main/sql" includes="schema.sql.vpp" />
									<mapper type="glob" from="*.sql.vpp" to="*-derby.sql" />
								</vppcopy>
								<!-- Reference script for Oracle - N.B. not under source control, but packagaed in jar. -->
								<vppcopy todir="${basedir}/target/generated-resources" overwrite="true">
									<config>
										<context>
											<property key="includes" value="src/main/sql" />
											<property file="${basedir}/src/main/sql/oracle10g.properties" />
										</context>
										<engine>
											<property key="velocimacro.library" value="src/main/sql/oracle10g.vpp" />
										</engine>
									</config>
									<fileset dir="${basedir}/src/main/sql" includes="schema.sql.vpp" />
									<mapper type="glob" from="*.sql.vpp" to="*-oracle10g.sql" />
								</vppcopy>
								<!-- Reference script for PostgreSQL - N.B. not under source control, but packagaed in jar. -->
								<vppcopy todir="${basedir}/target/generated-resources" overwrite="true">
									<config>
										<context>
											<property key="includes" value="src/main/sql" />
											<property file="${basedir}/src/main/sql/postgresql.properties" />
										</context>
										<engine>
											<property key="velocimacro.library" value="src/main/sql/postgresql.vpp" />
										</engine>
									</config>
									<fileset dir="${basedir}/src/main/sql" includes="schema.sql.vpp" />
									<mapper type="glob" from="*.sql.vpp" to="*-postgresql.sql" />
								</vppcopy>
								<!-- Reference script for MySQL - N.B. not under source control, but packaged in jar. -->
								<vppcopy todir="${basedir}/target/generated-resources" overwrite="true">
									<config>
										<context>
											<property key="includes" value="src/main/sql" />
											<property file="${basedir}/src/main/sql/mysql.properties" />
										</context>
										<engine>
											<property key="velocimacro.library" value="src/main/sql/mysql.vpp" />
										</engine>
									</config>
									<fileset dir="${basedir}/src/main/sql" includes="schema.sql.vpp" />
									<mapper type="glob" from="*.sql.vpp" to="*-mysql.sql" />
								</vppcopy>
							</tasks>
						</configuration>
						<goals>
							<goal>run</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>

	<reporting>
		<plugins>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>emma-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</reporting>

</project>