<?xml version="1.0" encoding="UTF-8"?>
<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>

	<!-- Sonatype config to publish on Maven Central -->
	<parent>
		<groupId>org.sonatype.oss</groupId>
		<artifactId>oss-parent</artifactId>
		<version>7</version>
	</parent>

        <prerequisites>
                <maven>3.1.1</maven>
        </prerequisites>

	<groupId>com.octo.android.robospice</groupId>
	<artifactId>robospice-parent</artifactId>
	<version>1.4.14</version>
	<packaging>pom</packaging>
	<name>Robospice - Parent</name>
	<description>RoboSpice is a modular android library that eases the development of Data-Driven Android applications.</description>
	<url>https://github.com/stephanenicolas/robospice</url>
	<inceptionYear>2012</inceptionYear>

	<scm>
		<connection>scm:git:ssh://git@github.com/stephanenicolas/robospice.git</connection>
		<url>git:ssh://git@github.com/stephanenicolas/robospice.git</url>
		<developerConnection>scm:git:ssh://git@github.com/stephanenicolas/robospice.git</developerConnection>
		<tag>robospice-parent-1.4.14</tag>
	</scm>

	<licenses>
		<license>
			<name>Apache 2</name>
			<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
		</license>
	</licenses>

	<issueManagement>
		<system>Github Issue Tracker</system>
		<url>https://github.com/stephanenicolas/robospice/issues</url>
	</issueManagement>

	<developers>
		<developer>
			<id>SNI</id>
			<name>Stéphane Nicolas</name>
			<email>steff.nicolas@gmail.com</email>
		</developer>
		<developer>
			<id>VDL</id>
			<name>Jérôme Van Der Linden</name>
			<email>jvanderlinden@octo.com</email>
		</developer>
		<developer>
			<id>MWA</id>
			<name>Maxence Walbrou</name>
			<email>mwalbrou@octo.com</email>
		</developer>
		<developer>
			<id>MHA</id>
			<name>Mathieu Hausherr</name>
			<email>mhausherr@octo.com</email>
		</developer>
		<developer>
			<id>RCI</id>
			<name>Riccardo Ciovati</name>
			<email>rciovati@gmail.com</email>
		</developer>
	</developers>

	<mailingLists>
		<mailingList>
			<name>RoboSpice Forum/Mailinglist</name>
			<post>http://groups.google.com/group/robospice</post>
			<subscribe>http://groups.google.com/group/robospice/subscribe</subscribe>
			<unsubscribe>https://groups.google.com/group/robospice/subscribe</unsubscribe>
		</mailingList>
	</mailingLists>

	<ciManagement>
		<system>travis</system>
		<url>https://travis-ci.org/stephanenicolas/robospice</url>
	</ciManagement>

	<modules>
		<module>robospice-cache-parent</module>
		<module>robospice-core-parent</module>

		<module>extensions/robospice-spring-android-parent</module>
		<module>extensions/robospice-google-http-client-parent</module>
		<module>extensions/robospice-retrofit-parent</module>
		<module>extensions/robospice-ormlite-parent</module>
		<module>extensions/robospice-ui-spicelist-parent</module>
		<module>extensions/robospice-okhttp-parent</module>
		<!-- uncomment when AndroidOrmLiteContentProvider is published on maven 
			<module>extensions/robospice-ormlite-content-provider-parent</module> -->
	</modules>

	<properties>
		<!-- DEPENDENCIES VERSIONS -->
		<android.version>4.1.1.4</android.version>
		<android-platform.version>19</android-platform.version>
		<android-annotations.version>4.1.1.4</android-annotations.version>
		<easymock.version>3.2</easymock.version>
		<dexmaker.version>1.1</dexmaker.version>
		<mockwebserver.version>20130706</mockwebserver.version>
		<junit.version>4.11</junit.version>
		<commons-logging.version>1.2</commons-logging.version>

		<!-- PLUGINS VERSIONS -->
		<android-maven-plugin.version>3.8.2</android-maven-plugin.version>
		<site-maven-plugin.version>0.9</site-maven-plugin.version>
		<maven-project-info-reports-plugin.version>2.7</maven-project-info-reports-plugin.version>
		<maven-surefire-report-plugin.version>2.15</maven-surefire-report-plugin.version>
		<maven-gpg-plugin.version>1.4</maven-gpg-plugin.version>
		<maven-source-plugin.version>2.2.1</maven-source-plugin.version>
		<maven-deploy-plugin.version>2.7</maven-deploy-plugin.version>
		<maven-release-plugin.version>2.5</maven-release-plugin.version>
		<maven-javadoc-plugin.version>2.9</maven-javadoc-plugin.version>
		<maven-jxr-plugin.version>2.3</maven-jxr-plugin.version>
		<maven-compiler-plugin.version>3.1</maven-compiler-plugin.version>
                <maven-dependency-plugin.version>2.8</maven-dependency-plugin.version>
		<maven-site-plugin.version>3.3</maven-site-plugin.version>
		<doxia-module-markdown.version>1.3</doxia-module-markdown.version>
		<maven-pmd-plugin.version>3.0.1</maven-pmd-plugin.version>
		<findbugs-maven-plugin.version>2.5.3</findbugs-maven-plugin.version>
		<maven-checkstyle-plugin.version>2.11</maven-checkstyle-plugin.version>
		<eclipse-lifecycle-plugin.version>1.0.0</eclipse-lifecycle-plugin.version>

		<!-- OTHER -->
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<github.global.server>github</github.global.server>
	</properties>

	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>com.google.android</groupId>
				<artifactId>annotations</artifactId>
				<version>${android-annotations.version}</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>com.google.android</groupId>
				<artifactId>android</artifactId>
				<version>${android.version}</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>com.google.android</groupId>
				<artifactId>android-test</artifactId>
				<version>${android.version}</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>junit</groupId>
				<artifactId>junit</artifactId>
				<version>${junit.version}</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.easymock</groupId>
				<artifactId>easymock</artifactId>
				<version>${easymock.version}</version>
				<exclusions>
					<exclusion>
						<groupId>cglib</groupId>
						<artifactId>cglib-nodep</artifactId>
					</exclusion>
				</exclusions>
			</dependency>
			<dependency>
				<groupId>com.google.dexmaker</groupId>
				<artifactId>dexmaker</artifactId>
				<version>${dexmaker.version}</version>
			</dependency>

			<!-- http://stackoverflow.com/questions/5591811/ignoring-innerclasses-attribute-warning-is-killing-eclipse -->
			<dependency>
				<groupId>commons-logging</groupId>
				<artifactId>commons-logging</artifactId>
				<version>${commons-logging.version}</version>
			</dependency>
			<dependency>
				<groupId>com.google.mockwebserver</groupId>
				<artifactId>mockwebserver</artifactId>
				<version>${mockwebserver.version}</version>
			</dependency>
		</dependencies>
	</dependencyManagement>

	<build>
		<pluginManagement>
			<plugins>
				<!-- Eclipse config -->
				<!-- http://stackoverflow.com/questions/13040788/how-to-elimate-the-maven-enforcer-plugin-goal-enforce-is-ignored-by-m2e-wa -->
				<plugin>
					<groupId>org.eclipse.m2e</groupId>
					<artifactId>lifecycle-mapping</artifactId>
					<version>${eclipse-lifecycle-plugin.version}</version>
					<configuration>
						<lifecycleMappingMetadata>
							<pluginExecutions>
								<pluginExecution>
									<pluginExecutionFilter>
										<groupId>org.apache.maven.plugins</groupId>
										<artifactId>maven-enforcer-plugin</artifactId>
										<versionRange>[1.0.0,)</versionRange>
										<goals>
											<goal>enforce</goal>
										</goals>
									</pluginExecutionFilter>
									<action>
										<ignore />
									</action>
								</pluginExecution>
								<pluginExecution>
									<pluginExecutionFilter>
										<groupId>org.apache.maven.plugins</groupId>
										<artifactId>maven-dependency-plugin</artifactId>
										<versionRange>[1.0.0,)</versionRange>
										<goals>
											<goal>copy-dependencies</goal>
										</goals>
									</pluginExecutionFilter>
									<action>
										<ignore />
									</action>
								</pluginExecution>
								<pluginExecution>
									<pluginExecutionFilter>
										<groupId>org.apache.maven.plugins</groupId>
										<artifactId>maven-checkstyle-plugin</artifactId>
										<versionRange>[${maven-checkstyle-plugin.version},)</versionRange>
										<goals>
											<goal>check</goal>
										</goals>
									</pluginExecutionFilter>
									<action>
										<ignore />
									</action>
								</pluginExecution>
							</pluginExecutions>

						</lifecycleMappingMetadata>
					</configuration>
				</plugin>
				<!-- Android config -->
				<plugin>
					<groupId>com.jayway.maven.plugins.android.generation2</groupId>
					<artifactId>android-maven-plugin</artifactId>
					<version>${android-maven-plugin.version}</version>
					<configuration>
						<androidManifestFile>${project.basedir}/AndroidManifest.xml</androidManifestFile>
						<assetsDirectory>${project.basedir}/assets</assetsDirectory>
						<resourceDirectory>${project.basedir}/res</resourceDirectory>
						<nativeLibrariesDirectory>${project.basedir}/src/main/native</nativeLibrariesDirectory>
						<sdk>
							<platform>${android-platform.version}</platform>
						</sdk>
						<undeployBeforeDeploy>true</undeployBeforeDeploy>
					</configuration>
					<extensions>true</extensions>
				</plugin>
				<plugin>
					<artifactId>maven-compiler-plugin</artifactId>
					<version>${maven-compiler-plugin.version}</version>
					<configuration>
						<source>1.6</source>
						<target>1.6</target>
					</configuration>
				</plugin>
				<plugin>
					<artifactId>maven-deploy-plugin</artifactId>
					<version>${maven-deploy-plugin.version}</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-javadoc-plugin</artifactId>
					<version>${maven-javadoc-plugin.version}</version>
					<executions>
						<execution>
							<id>attach-javadoc</id>
							<goals>
								<goal>jar</goal>
							</goals>
						</execution>
						<execution>
							<id>aggregate</id>
							<goals>
								<goal>aggregate</goal>
							</goals>
							<phase>site</phase>
							<configuration>
								<sourcepath>robospice-core-parent/robospice:
									robospice-cache-parent/robospice-cache:
									extensions/robospice-spring-android-parent/robospice-spring-android:
									extensions/robospice-retrofit-parent/robospice-retrofit:
									extensions/robospice-google-http-client-parent/robospice-google-http-client:
									extensions/robospice-ormlite-parent/robospice-ormlite:
									extensions/robospice-ui-spicelist-parent/robospice-ui-spicelist:
								</sourcepath>
							</configuration>
						</execution>
					</executions>
				</plugin>
				<!-- extra config -->
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-source-plugin</artifactId>
					<version>${maven-source-plugin.version}</version>
					<executions>
						<execution>
							<id>attach-source</id>
							<goals>
								<goal>jar</goal>
							</goals>
						</execution>
					</executions>
				</plugin>

				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-checkstyle-plugin</artifactId>
					<version>${maven-checkstyle-plugin.version}</version>
					<configuration>
						<configLocation>robospice_checks.xml</configLocation>
						<enableRulesSummary>false</enableRulesSummary>
					</configuration>
					<executions>
						<execution>
							<id>checkstyle-check</id>
							<phase>process-sources</phase>
							<goals>
								<goal>check</goal>
							</goals>
						</execution>
					</executions>
				</plugin>
				<plugin>
					<groupId>org.codehaus.mojo</groupId>
					<artifactId>findbugs-maven-plugin</artifactId>
					<version>${findbugs-maven-plugin.version}</version>
					<executions>
						<execution>
							<id>findbugs-check</id>
							<phase>verify</phase>
							<goals>
								<goal>check</goal>
							</goals>
						</execution>
					</executions>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-pmd-plugin</artifactId>
					<version>${maven-pmd-plugin.version}</version>
					<configuration>
						<targetJdk>1.5</targetJdk>
					</configuration>
					<executions>
						<execution>
							<id>pmd-check</id>
							<goals>
								<goal>check</goal>
								<goal>cpd-check</goal>
							</goals>
						</execution>
					</executions>
				</plugin>
				<!-- release -->
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-release-plugin</artifactId>
					<version>${maven-release-plugin.version}</version>
					<configuration>
						<autoVersionSubmodules>true</autoVersionSubmodules>
					</configuration>
				</plugin>
				<!-- deploy javadoc and maven site to github https://github.com/github/maven-plugins/issues/22 -->
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-site-plugin</artifactId>
					<version>${maven-site-plugin.version}</version>
					<configuration>
						<skipDeploy>true</skipDeploy>
					</configuration>
					<dependencies>
						<dependency>
							<!-- | allows markdown syntax for site generation. To use it place 
								files below | src/site/markdown/[filename].md -->
							<groupId>org.apache.maven.doxia</groupId>
							<artifactId>doxia-module-markdown</artifactId>
							<version>${doxia-module-markdown.version}</version>
						</dependency>
					</dependencies>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-gpg-plugin</artifactId>
					<version>${maven-gpg-plugin.version}</version>
					<executions>
						<execution>
							<id>sign-artifacts</id>
							<phase>verify</phase>
							<goals>
								<goal>sign</goal>
							</goals>
						</execution>
					</executions>
				</plugin>
			</plugins>
		</pluginManagement>

		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-checkstyle-plugin</artifactId>
			</plugin>
			<!-- http://blog.akquinet.de/2012/04/12/maven-sites-reloaded/ -->
			<!-- http://minds.coremedia.com/2012/09/11/problem-solved-deploy-multi-module-maven-project-site-as-github-pages/ -->
			<plugin>
				<groupId>com.github.github</groupId>
				<artifactId>site-maven-plugin</artifactId>
				<version>${site-maven-plugin.version}</version>
				<executions>
					<execution>
						<id>site-deploy-to-github</id>
						<goals>
							<goal>site</goal>
						</goals>
						<phase>site-deploy</phase>
						<configuration>
							<merge>true</merge>
							<message>Creating site for ${project.version}</message>
							<path>${project.distributionManagement.site.url}</path>
							<excludes>
								<exclude>dependencies/**</exclude>
							</excludes>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<inherited>false</inherited>
				<configuration>
					<sourcepath>robospice-core-parent/robospice:
						robospice-cache-parent/robospice-cache:
						extensions/robospice-spring-android-parent/robospice-spring-android:
						extensions/robospice-google-http-client-parent/robospice-google-http-client:
						extensions/robospice-retrofit-parent/robospice-retrofit:
						extensions/robospice-ormlite-parent/robospice-ormlite:
						extensions/robospice-ui-spicelist-parent/robospice-ui-spicelist:
					</sourcepath>
				</configuration>
			</plugin>
		</plugins>
	</build>

	<profiles>
		<profile>
			<id>standard</id>
			<activation>
				<activeByDefault>true</activeByDefault>
			</activation>
			<distributionManagement>
				<site>
					<id>github-pages-site</id>
					<name>Deployment through GitHub's site deployment plugin</name>
					<url>site/latest</url>
				</site>
			</distributionManagement>
		</profile>
		<profile>
			<id>repository</id>
			<activation>
				<property>
					<name>performRelease</name>
					<value>true</value>
				</property>
			</activation>
			<build>
				<pluginManagement>
					<plugins>
						<!-- copy dependencies for ant users -->
						<plugin>
							<groupId>org.apache.maven.plugins</groupId>
							<artifactId>maven-dependency-plugin</artifactId>
                                                        <version>${maven-dependency-plugin.version}</version>
							<configuration>
								<artifact>${project.groupId}:${project.artifactId}:${project.version}</artifact>
								<outputDirectory>${project.build.directory}/dependencies/${project.version}/${project.artifactId}/</outputDirectory>
							</configuration>
							<executions>
								<execution>
									<id>copy-dependencies-for-ant-users</id>
									<phase>install</phase>
									<goals>
										<goal>copy-dependencies</goal>
									</goals>
								</execution>
								<execution>
									<id>copy-artifact</id>
									<phase>install</phase>
									<goals>
										<goal>copy</goal>
									</goals>
								</execution>
							</executions>
						</plugin>
						<plugin>
							<groupId>com.github.github</groupId>
							<artifactId>site-maven-plugin</artifactId>
							<version>${site-maven-plugin.version}</version>
							<executions>
								<execution>
									<id>repository-deploy-to-github</id>
									<goals>
										<goal>site</goal>
									</goals>
									<phase>deploy</phase>
									<configuration>
										<message>Maven artifacts for ${project.version}</message>  <!-- git commit message -->
										<noJekyll>true</noJekyll>                                  <!-- disable webpage processing -->
										<branch>refs/heads/repository</branch>                       <!-- remote branch name -->
										<merge>true</merge>
										<outputDirectory>${project.build.directory}/</outputDirectory>
										<includes>
											<include>dependencies/**</include>
										</includes>
									</configuration>
								</execution>
							</executions>
						</plugin>
					</plugins>
				</pluginManagement>
			</build>
		</profile>

		<profile>
			<id>sign</id>
			<activation>
				<property>
					<name>performRelease</name>
					<value>true</value>
				</property>
			</activation>
			<distributionManagement>
				<site>
					<id>github-pages-site</id>
					<name>Deployment through GitHub's site deployment plugin</name>
					<url>site/release-${project.version}</url>
				</site>
			</distributionManagement>
			<build>
				<plugins>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-gpg-plugin</artifactId>
					</plugin>
				</plugins>
			</build>
		</profile>
		<profile>
			<id>fast</id>
			<properties>
				<maven.javadoc.skip>true</maven.javadoc.skip>
			</properties>
			<build>
				<pluginManagement>
					<plugins>
						<plugin>
							<groupId>org.codehaus.mojo</groupId>
							<artifactId>findbugs-maven-plugin</artifactId>
							<version>${findbugs-maven-plugin.version}</version>
							<configuration>
								<skip>true</skip>
							</configuration>
						</plugin>
						<plugin>
							<groupId>org.apache.maven.plugins</groupId>
							<artifactId>maven-pmd-plugin</artifactId>
							<version>${maven-pmd-plugin.version}</version>
							<configuration>
								<skip>true</skip>
							</configuration>
						</plugin>
						<plugin>
							<groupId>org.apache.maven.plugins</groupId>
							<artifactId>maven-checkstyle-plugin</artifactId>
							<version>${maven-checkstyle-plugin.version}</version>
							<configuration>
								<skip>true</skip>
							</configuration>
						</plugin>
					</plugins>
				</pluginManagement>
			</build>
		</profile>
	</profiles>

	<reporting>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-project-info-reports-plugin</artifactId>
				<version>${maven-project-info-reports-plugin.version}</version>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-checkstyle-plugin</artifactId>
				<version>${maven-checkstyle-plugin.version}</version>
				<configuration>
					<!-- we are using the Sun Standard code style from the Maven Checkstyle 
						Plugin -->
					<configLocation>robospice_checks.xml</configLocation>
					<enableRulesSummary>false</enableRulesSummary>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>findbugs-maven-plugin</artifactId>
				<version>${findbugs-maven-plugin.version}</version>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-report-plugin</artifactId>
				<version>${maven-surefire-report-plugin.version}</version>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-pmd-plugin</artifactId>
				<version>${maven-pmd-plugin.version}</version>
				<configuration>
					<targetJdk>1.5</targetJdk>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<version>${maven-javadoc-plugin.version}</version>
				<reportSets>
					<reportSet>
						<id>aggregate</id><!-- aggregate reportSet, for pom with modules -->
						<inherited>false</inherited><!-- don't run aggregate in child modules -->
						<reports>
							<report>aggregate</report>
						</reports>
					</reportSet>
				</reportSets>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-jxr-plugin</artifactId>
				<version>${maven-jxr-plugin.version}</version>
				<configuration>
					<aggregate>true</aggregate>
				</configuration>
			</plugin>
		</plugins>
	</reporting>

</project>
