<?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">
	<properties>
		<packaging.type>bundle</packaging.type>
		<tests.excludeGroups>tigase.tests.SlowTest</tests.excludeGroups>
	</properties>
	<modelVersion>4.0.0</modelVersion>
	<artifactId>tigase-server</artifactId>
	<name>Tigase XMPP Server</name>
	<packaging>${packaging.type}</packaging>
	<description>Tigase XMPP Server - OSGi bundle</description>

	<parent>
		<groupId>tigase</groupId>
		<artifactId>tigase-server-master</artifactId>
		<version>7.1.7-SNAPSHOT</version>
		<relativePath>modules/master</relativePath>
	</parent>

	<profiles>
		<profile>
			<id>osgi</id>
			<activation>
				<activeByDefault>true</activeByDefault>
			</activation>
			<properties>
				<packaging.type>bundle</packaging.type>
				<maven.javadoc.skip>true</maven.javadoc.skip>
			</properties>
		</profile>
		<profile>
			<id>jar</id>
			<properties>
				<packaging.type>jar</packaging.type>
				<maven.javadoc.skip>true</maven.javadoc.skip>
			</properties>
		</profile>
		<profile>
			<id>dist</id>
			<properties>
				<packaging.type>bundle</packaging.type>
				<maven.javadoc.skip>false</maven.javadoc.skip>
				<tests.excludeGroups />
			</properties>
		</profile>
	</profiles>

	<licenses>
		<license>
			<name>GNU Affero General Public License GPLv3</name>
			<url>http://www.gnu.org/licenses/agpl.txt</url>
		</license>
	</licenses>
	<build>
		<finalName>${project.artifactId}</finalName>
		<plugins>
			<plugin>
				<groupId>org.apache.felix</groupId>
				<artifactId>maven-bundle-plugin</artifactId>
				<version>2.4.0</version>
				<extensions>true</extensions>
				<configuration>
					<instructions combine.inherited="append">
						<manifestLocation>src/main/resources/META-INF/MANIFEST.MF</manifestLocation>
						<Implementation-Title>${project.name}</Implementation-Title>
						<Implementation-Version>${project.version}-b${gitVersion}/${buildNumber} (${maven.build.timestamp})</Implementation-Version>
						<Implementation-Build>${gitVersion}/${buildNumber} (${maven.build.timestamp})</Implementation-Build>
						<Tigase-Version>${project.version}-b${gitVersion}</Tigase-Version>
						<Bundle-Activator>tigase.osgi.Activator</Bundle-Activator>
						<Export-Package>gnu.inet.encoding.*;version=${packet.version},tigase.*;version=${packet.version};-split-package:=merge-first</Export-Package>
						<Import-Package>!junit.*,!sun.*,!com.sun.*,*</Import-Package>
						<DynamicImport-Package>*</DynamicImport-Package>
						<inlinedArtifacts>
							<inlinedArtifact>tigase-utils</inlinedArtifact>
							<inlinedArtifact>tigase-xmltools</inlinedArtifact>
						</inlinedArtifacts>
						<Embed-Dependency>*;scope=compile|runtime;artifactId=!junit|org.osgi.core|slf4j-api|tigase-utils|tigase-xmltools</Embed-Dependency>
						<Bundle-SymbolicName>${project.artifactId};singleton=true</Bundle-SymbolicName>
						<Private-Package>tigase.annotations.*,tigase.auth.*,tigase.cluster.*,tigase.conf.*,tigase.db.*,tigase.disco.*,tigase.http.*,tigase.io.*,tigase.net.*,tigase.server.*,tigase.stats.*,tigase.sys.*,tigase.util.*,tigase.vhosts.*,tigase.xmpp.*</Private-Package>
					</instructions>
				</configuration>
			</plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <version>3.0.2</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>test-jar</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<version>3.1.1</version>
                <configuration>
                    <failOnError>false</failOnError>
					<additionalparam>-Xdoclint:none</additionalparam>
					<doclint>all,-missing</doclint>
                </configuration>
				<executions>
					<execution>
						<id>attach-javadocs</id>
						<goals>
							<goal>jar</goal>
						</goals>
						<configuration>
							<source>1.8</source>
							<quiet>true</quiet>
							<aggregate>true</aggregate>
							<includeDependencySources>true</includeDependencySources>
							<dependencySourceIncludes>
								<dependencySourceInclude>tigase:*</dependencySourceInclude>
							</dependencySourceIncludes>

							<reportOutputDirectory>${project.reporting.outputDirectory}/docs/javadoc</reportOutputDirectory>
							<destDir>docs/javadoc</destDir>

							<finalName>${project.artifactId}-${project.version}-b${gitVersion}</finalName>
							<jarOutputDirectory>pack</jarOutputDirectory>

							<additionalparam>-Xdoclint:none</additionalparam>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<version>2.17</version>
				<dependencies>
					<dependency>
						<groupId>org.apache.maven.surefire</groupId>
						<artifactId>surefire-junit47</artifactId>
						<version>2.17</version>
					</dependency>
				</dependencies>
				<configuration>
					<excludedGroups>${tests.excludeGroups}</excludedGroups>
					<parallel>methods</parallel>
					<threadCount>10</threadCount>	
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-jarsigner-plugin</artifactId>
				<version>1.4</version>
				<executions>
					<execution>
						<id>sign</id>
						<goals>
							<goal>sign</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<archiveDirectory>${project.basedir}</archiveDirectory>
					<includes>
						<include>target/tigase*.?ar</include>
						<include>jars/tigase*.?ar</include>
					</includes>
					<processMainArtifact>false</processMainArtifact>
					<processAttachedArtifacts>false</processAttachedArtifacts>
					<tsa>${tsa-uri}</tsa>
					<skip>${sign-skip-server}</skip>

					<keystore>${sign-keystore}</keystore>
					<alias>${sign-alias}</alias>
					<storepass>${sign-storepass}</storepass>
					<keypass>${sign-keypass}</keypass>
					<verbose>${verbose-log}</verbose>
				</configuration>
			</plugin>
		</plugins>
	</build>
	<dependencies>
		<dependency>
			<groupId>tigase</groupId>
			<artifactId>tigase-utils</artifactId>
			<version>3.5.1</version>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>tigase</groupId>
			<artifactId>tigase-xmltools</artifactId>
			<version>3.5.0</version>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.felix</groupId>
			<artifactId>org.osgi.core</artifactId>
			<version>1.4.0</version>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>jul-to-slf4j</artifactId>
			<version>${slf4j.version}</version>
			<scope>provided</scope>
			<optional>true</optional>
		</dependency>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.11</version>
			<scope>test</scope>
		</dependency>
	</dependencies>
</project>

