<?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/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.github.vebqa</groupId>
	<artifactId>f3270</artifactId>
	<version>1.3.0</version>

	<name>f3270</name>
	<description>Java framework for testing mainframe (TN3270) applications </description>
	<inceptionYear>2009</inceptionYear>

	<url>https://github.com/vebqa/f3270</url>

	<scm>
		<url>https://github.com/vebqa/f3270</url>
	</scm>

	<licenses>
		<license>
			<name>GNU GPL</name>
			<url>http://www.gnu.org/licenses/gpl.txt</url>
		</license>
	</licenses>

	<developers>
		<developer>
			<name>Karsten Doerges</name>
			<email>kdoerges@googlemail.com</email>
		</developer>
	</developers>

	<properties>
		<site.path></site.path>
		<skip.unit.tests>false</skip.unit.tests>
		<!-- overwrite in settings by profile: integration-test -->
		<skip.integration.tests>true</skip.integration.tests>
		<!-- overwrite in settings by profile: githubio -->
		<skip.publish.githubio>true</skip.publish.githubio>
	</properties>

	<build>
		<sourceDirectory>src/main/java</sourceDirectory>
		<testSourceDirectory>src/test/java</testSourceDirectory>
		<plugins>
			<!-- compile -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.7.0</version>
				<configuration>
					<source>1.8</source>
					<target>1.8</target>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-source-plugin</artifactId>
				<version>3.0.1</version>
				<executions>
					<execution>
						<id>attach-sources</id>
						<goals>
							<goal>jar-no-fork</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<version>3.0.0</version>
				<executions>
					<execution>
						<id>attach-javadocs</id>
						<goals>
							<goal>jar</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<!-- static code analysis -->
			<plugin>
				<groupId>org.sonarsource.scanner.maven</groupId>
				<artifactId>sonar-maven-plugin</artifactId>
				<version>3.4.0.905</version>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-jdeps-plugin</artifactId>
				<version>3.1.1</version>
			</plugin>
			<!-- unit testing -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<version>2.21.0</version>
				<configuration>
					<skipTests>${skip.unit.tests}</skipTests>
					<!-- run all tests, tagged with categoy (UnitTests) -->
					<groups>net.sf.f3270.UnitTests</groups>
				</configuration>
			</plugin>
			<!-- integration testing -->
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>build-helper-maven-plugin</artifactId>
				<version>3.0.0</version>
				<executions>
					<execution>
						<id>add-integration-test-sources</id>
						<phase>generate-test-sources</phase>
						<goals>
							<goal>add-test-source</goal>
						</goals>
						<configuration>
							<sources>
								<source>src/integration-test/java</source>
							</sources>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-failsafe-plugin</artifactId>
				<version>2.21.0</version>
				<executions>
					<execution>
						<id>integration-test</id>
						<goals>
							<goal>integration-test</goal>
							<goal>verify</goal>
						</goals>
						<configuration>
							<includes>
								<include>**/*.java</include>
							</includes>
							<skipTests>${skip.integration.tests}</skipTests>
							<groups>net.sf.f3270.IntegrationTests</groups>
							<systemPropertyVariables>
								<host.client.path>${path.local.s3270}</host.client.path>
								<host.app.user>${host.app.user}</host.app.user>
								<host.app.password>${host.app.password}</host.app.password>
							</systemPropertyVariables>
						</configuration>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>

	<profiles>
		<profile>
			<id>documentation</id>
			<build>
				<plugins>
					<plugin>
						<artifactId>maven-site-plugin</artifactId>
						<version>3.7</version>
					</plugin>
					<plugin>
						<groupId>com.github.github</groupId>
						<artifactId>site-maven-plugin</artifactId>
						<version>0.12</version>
						<configuration>
							<message>Generated site</message>
							<path>${site.path}</path>
							<merge>true</merge>
							<server>github</server>
							<dryRun>${skip.publish.githubio}</dryRun>
						</configuration>
						<executions>
							<execution>
								<goals>
									<goal>site</goal>
								</goals>
								<phase>site</phase>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
			<reporting>
				<plugins>
					<plugin>
						<groupId>com.soebes.maven.plugins</groupId>
						<artifactId>doxygen-maven-plugin</artifactId>
						<version>1.1.0</version>
						<configuration>
							<workingDirectory>${basedir}</workingDirectory>
							<executable>${doxygen.executable.path}</executable>
							<haveDot>true</haveDot>
							<dotCleanup>true</dotCleanup>
							<extractAll>true</extractAll>
							<umlLook>true</umlLook>
							<callGraph>true</callGraph>
							<callerGraph>true</callerGraph>
							<dotPath>${dot.executable.path}</dotPath>
							<quiet>false</quiet>
							<filePatterns>*.java</filePatterns>
							<configurationFile>./doxygen.config</configurationFile>
							<input>${doxygenInput}</input>
							<recursive>true</recursive>
						</configuration>
					</plugin>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-changes-plugin</artifactId>
						<version>2.12.1</version>
						<reportSets>
							<reportSet>
								<reports>
									<report>changes-report</report>
								</reports>
							</reportSet>
						</reportSets>
					</plugin>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-dependency-plugin</artifactId>
						<version>3.0.2</version>
						<reportSets>
							<reportSet>
								<reports>
									<report>analyze-report</report>
								</reports>
							</reportSet>
						</reportSets>
					</plugin>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-pmd-plugin</artifactId>
						<version>3.9.0</version>
						<configuration>
							<skipEmptyReport>false</skipEmptyReport>
							<includeTests>true</includeTests>
						</configuration>
						<reportSets>
							<reportSet>
								<reports>
									<report>cpd</report>
									<report>pmd</report>
								</reports>
							</reportSet>
						</reportSets>
					</plugin>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-project-info-reports-plugin</artifactId>
						<version>2.9</version>
						<configuration>
							<dependencyLocationsEnabled>false</dependencyLocationsEnabled>
						</configuration>
						<reportSets>
							<reportSet>
								<reports>
									<report>index</report>
									<report>summary</report>
									<report>modules</report>
									<report>license</report>
									<report>project-team</report>
									<report>scm</report>
									<report>issue-tracking</report>
									<report>dependency-management</report>
									<report>dependencies</report>
									<report>dependency-convergence</report>
									<report>plugin-management</report>
									<report>plugins</report>
								</reports>
							</reportSet>
						</reportSets>
					</plugin>
				</plugins>
			</reporting>
		</profile>

		<profile>
			<id>release</id>
			<build>
				<plugins>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-gpg-plugin</artifactId>
						<version>1.6</version>
						<executions>
							<execution>
								<id>sign-artifacts</id>
								<phase>verify</phase>
								<goals>
									<goal>sign</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
					<plugin>
						<groupId>org.sonatype.plugins</groupId>
						<artifactId>nexus-staging-maven-plugin</artifactId>
						<version>1.6.8</version>
						<extensions>true</extensions>
						<configuration>
							<serverId>ossrh</serverId>
							<nexusUrl>https://oss.sonatype.org/</nexusUrl>
							<autoReleaseAfterClose>true</autoReleaseAfterClose>
						</configuration>
					</plugin>
				</plugins>
			</build>
			<distributionManagement>
				<snapshotRepository>
					<id>ossrh</id>
					<url>https://oss.sonatype.org/content/repositories/snapshots</url>
				</snapshotRepository>
				<repository>
					<id>ossrh</id>
					<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/
				</url>
				</repository>
			</distributionManagement>
		</profile>
	</profiles>

	<dependencies>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.12</version>
		</dependency>
		<dependency>
			<groupId>log4j</groupId>
			<artifactId>log4j</artifactId>
			<version>1.2.17</version>
		</dependency>
	</dependencies>
</project>
