<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">

	<modelVersion>4.0.0</modelVersion>

	<parent>
		<groupId>org.springframework.data.build</groupId>
		<artifactId>spring-data-parent</artifactId>
		<version>2.2.0.BUILD-SNAPSHOT</version>
	</parent>

	<groupId>org.springframework.data</groupId>
	<artifactId>spring-data-gemfire</artifactId>
	<version>2.2.0.BUILD-SNAPSHOT</version>

	<name>Spring Data for Pivotal GemFire</name>

	<properties>
		<dist.key>SGF</dist.key>
		<java-module-name>spring.data.gemfire</java-module-name>
		<source.level>1.8</source.level>
		<antlr.version>2.7.7</antlr.version>
		<apache-shiro.version>1.3.2</apache-shiro.version>
		<cache-api.version>1.0.0</cache-api.version>
		<gemfire.version>9.8.2</gemfire.version>
		<google-code-findbugs.version>2.0.2</google-code-findbugs.version>
		<multithreadedtc.version>1.01</multithreadedtc.version>
		<snappy.version>0.4</snappy.version>
		<springdata.commons>2.2.0.BUILD-SNAPSHOT</springdata.commons>
		<spring-shell.version>1.2.0.RELEASE</spring-shell.version>
	</properties>

	<repositories>
		<repository>
			<id>spring-libs-snapshot</id>
			<url>https://repo.spring.io/libs-snapshot</url>
		</repository>
		<repository>
			<id>apache-snapshots</id>
			<url>https://repository.apache.org/content/repositories/snapshots</url>
		</repository>
	</repositories>

	<pluginRepositories>
		<pluginRepository>
			<id>spring-plugins-release</id>
			<url>https://repo.spring.io/plugins-release</url>
		</pluginRepository>
	</pluginRepositories>

	<dependencies>

		<!-- Java & Javax -->
		<dependency>
			<groupId>javax.cache</groupId>
			<artifactId>cache-api</artifactId>
			<version>${cache-api.version}</version>
			<optional>true</optional>
		</dependency>

		<!-- CDI -->
		<!-- Dependency order required to build against CDI 1.0 and test with CDI 2.0 -->
		<dependency>
			<groupId>org.apache.geronimo.specs</groupId>
			<artifactId>geronimo-jcdi_2.0_spec</artifactId>
			<version>1.0.1</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>javax.interceptor</groupId>
			<artifactId>javax.interceptor-api</artifactId>
			<version>1.2.1</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>javax.el</groupId>
			<artifactId>el-api</artifactId>
			<version>2.2</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>javax.enterprise</groupId>
			<artifactId>cdi-api</artifactId>
			<version>${cdi}</version>
			<scope>provided</scope>
			<optional>true</optional>
		</dependency>

		<!-- Core Spring Framework -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-context-support</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-tx</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-web</artifactId>
		</dependency>

		<!-- Spring Data Commons -->
		<dependency>
			<groupId>org.springframework.data</groupId>
			<artifactId>spring-data-commons</artifactId>
			<version>${springdata.commons}</version>
		</dependency>

		<!-- Pivotal GemFire -->
		<dependency>
			<groupId>io.pivotal.gemfire</groupId>
			<artifactId>geode-core</artifactId>
			<version>${gemfire.version}</version>
		</dependency>

		<dependency>
			<groupId>io.pivotal.gemfire</groupId>
			<artifactId>geode-cq</artifactId>
			<version>${gemfire.version}</version>
		</dependency>

		<dependency>
			<groupId>io.pivotal.gemfire</groupId>
			<artifactId>geode-lucene</artifactId>
			<version>${gemfire.version}</version>
		</dependency>

		<dependency>
			<groupId>io.pivotal.gemfire</groupId>
			<artifactId>geode-wan</artifactId>
			<version>${gemfire.version}</version>
		</dependency>

		<dependency>
			<groupId>antlr</groupId>
			<artifactId>antlr</artifactId>
			<version>${antlr.version}</version>
			<scope>runtime</scope>
		</dependency>

		<dependency>
			<groupId>org.apache.shiro</groupId>
			<artifactId>shiro-spring</artifactId>
			<version>${apache-shiro.version}</version>
			<optional>true</optional>
		</dependency>

		<!-- 3rd Party Dependencies -->
		<dependency>
			<groupId>org.aspectj</groupId>
			<artifactId>aspectjweaver</artifactId>
			<version>${aspectj}</version>
		</dependency>

		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-annotations</artifactId>
		</dependency>

		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-databind</artifactId>
		</dependency>

		<!-- Logging -->
		<dependency>
			<groupId>ch.qos.logback</groupId>
			<artifactId>logback-classic</artifactId>
			<version>${logback}</version>
			<scope>test</scope>
		</dependency>

		<!-- Test -->
		<dependency>
			<groupId>javax.annotation</groupId>
			<artifactId>javax.annotation-api</artifactId>
			<version>${javax-annotation-api}</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.assertj</groupId>
			<artifactId>assertj-core</artifactId>
			<version>${assertj}</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.apache.derby</groupId>
			<artifactId>derbyLocale_zh_TW</artifactId>
			<version>10.9.1.0</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.apache.openwebbeans</groupId>
			<artifactId>openwebbeans-se</artifactId>
			<version>${webbeans}</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>edu.umd.cs.mtc</groupId>
			<artifactId>multithreadedtc</artifactId>
			<version>${multithreadedtc.version}</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.iq80.snappy</groupId>
			<artifactId>snappy</artifactId>
			<version>${snappy.version}</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.springframework.shell</groupId>
			<artifactId>spring-shell</artifactId>
			<version>${spring-shell.version}</version>
			<scope>test</scope>
		</dependency>

	</dependencies>

	<build>
		<plugins>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<configuration>
					<includes>
						<include>**/*Test.java</include>
						<include>**/*Tests.java</include>
					</includes>
					<reuseForks>false</reuseForks>
					<systemProperties>
						<gemfire.disableShutdownHook>true</gemfire.disableShutdownHook>
						<java.util.logging.config.file>${basedir}/src/test/resources/java-util-logging.properties</java.util.logging.config.file>
						<javax.net.ssl.keyStore>${basedir}/src/test/resources/trusted.keystore</javax.net.ssl.keyStore>
						<logback.log.level>error</logback.log.level>
						<spring.profiles.active>apache-geode</spring.profiles.active>
					</systemProperties>
				</configuration>
			</plugin>

			<plugin>
				<groupId>org.asciidoctor</groupId>
				<artifactId>asciidoctor-maven-plugin</artifactId>
				<configuration>
					<attributes>
						<basedocdir>${project.basedir}/src/main/asciidoc</basedocdir>
						<doctype>book</doctype>
						<version>${project.version}</version>
					</attributes>
				</configuration>
			</plugin>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-assembly-plugin</artifactId>
			</plugin>

		</plugins>
	</build>

	<profiles>

		<profile>
			<id>html-asciidoc</id>
			<build>
				<plugins>
					<plugin>
						<groupId>org.asciidoctor</groupId>
						<artifactId>asciidoctor-maven-plugin</artifactId>
						<configuration>
							<attributes>
								<basedocdir>${project.basedir}/src/main/asciidoc</basedocdir>
								<doctype>book</doctype>
								<numbered>true</numbered>
								<sectnums>true</sectnums>
								<toclevels>2</toclevels>
								<version>${project.version}</version>
								<!-- TODO include other attributes from build.gradle! -->
							</attributes>
						</configuration>
						<executions>
							<execution>
								<id>html</id>
								<phase>generate-resources</phase>
								<goals>
									<goal>process-asciidoc</goal>
								</goals>
								<configuration>
									<backend>html5</backend>
									<outputDirectory>${project.root}/target/site/reference/html</outputDirectory>
									<sourceHighlighter>prettify</sourceHighlighter>
									<attributes>
										<linkcss>true</linkcss>
										<icons>font</icons>
										<sectanchors>true</sectanchors>
										<stylesheet>spring.css</stylesheet>
									</attributes>
								</configuration>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>

	</profiles>

</project>
