<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>io.silverware</groupId>
   <artifactId>silverware-parent</artifactId>
   <version>2.0</version>
   <packaging>pom</packaging>
   <name>SilverWare</name>
   <description>Microservices Platform.</description>
   <url>http://www.silverware.org</url>
   <inceptionYear>2015</inceptionYear>
   <developers>
      <developer>
         <name>Martin Večeřa</name>
         <email>marvenec@gmail.com</email>
         <roles>
            <role>Owner</role>
         </roles>
      </developer>
   </developers>
   <issueManagement>
      <url>https://github.com/px3/SilverWare/issues</url>
      <system>github</system>
   </issueManagement>
   <organization>
      <name>px3</name>
      <url>http://www.silverware.io</url>
   </organization>
   <scm>
      <url>https://github.com/px3/SilverWare</url>
      <connection>scm:git:git://github.com/px3/SilverWare.git</connection>
      <developerConnection>scm:git:git@github.com:px3/SilverWare.git</developerConnection>
      <tag>v2.0</tag>
   </scm>
   <licenses>
      <license>
         <name>The Apache Software License, Version 2.0</name>
         <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
         <distribution>repo</distribution>
         <comments>A business-friendly OSS license</comments>
      </license>
   </licenses>
   <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>
   <properties>
      <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
      <java.level>1.8</java.level>
      <version.checkstyle>6.16.1</version.checkstyle>
      <version.maven.checkstyle.plugin>2.17</version.maven.checkstyle.plugin>
      <version.maven.compiler>3.3</version.maven.compiler>
      <version.maven.surefire>2.19.1</version.maven.surefire>
      <version.maven.findbugs>3.0.0</version.maven.findbugs>
      <version.maven.project.reports>2.7</version.maven.project.reports>
      <version.maven.jar.plugin>2.4</version.maven.jar.plugin>
      <version.maven.dependency.plugin>2.10</version.maven.dependency.plugin>
      <version.maven.license.plugin>1.5</version.maven.license.plugin>
      <version.maven.release.plugin>2.4.1</version.maven.release.plugin>
      <version.maven.gpg.plugin>1.5</version.maven.gpg.plugin>
      <version.maven.source.plugin>2.4</version.maven.source.plugin>
      <version.maven.javadoc.plugin>2.10.1</version.maven.javadoc.plugin>
   </properties>
   <modules>
      <module>microservices-bom</module>
      <module>microservices</module>
      <module>camel-microservice-provider</module>
      <module>camel-cdi-integration</module>
      <module>cdi-microservice-provider</module>
      <module>cluster-microservice-provider</module>
      <module>http-server-microservice-provider</module>
      <module>monitoring-microservice-provider</module>
      <module>http-invoker-microservice-provider</module>
      <module>drools-microservice-provider</module>
      <module>rest-client-microservice-provider</module>
      <module>activemq-microservice-provider</module>
      <module>vertx-microservice-provider</module>
   </modules>
   <dependencyManagement>
      <dependencies>
         <dependency>
            <groupId>io.silverware</groupId>
            <artifactId>microservices-bom</artifactId>
            <version>${project.version}</version>
            <type>pom</type>
            <scope>import</scope>
         </dependency>
      </dependencies>
   </dependencyManagement>
   <dependencies>
      <dependency>
         <groupId>org.apache.logging.log4j</groupId>
         <artifactId>log4j-api</artifactId>
      </dependency>
      <dependency>
         <groupId>org.apache.logging.log4j</groupId>
         <artifactId>log4j-core</artifactId>
      </dependency>
      <dependency>
         <groupId>org.apache.logging.log4j</groupId>
         <artifactId>log4j-1.2-api</artifactId>
      </dependency>
      <dependency>
         <groupId>org.apache.logging.log4j</groupId>
         <artifactId>log4j-jcl</artifactId>
      </dependency>
      <dependency>
         <groupId>org.apache.logging.log4j</groupId>
         <artifactId>log4j-jul</artifactId>
      </dependency>
      <dependency>
         <groupId>org.apache.logging.log4j</groupId>
         <artifactId>log4j-slf4j-impl</artifactId>
      </dependency>
      <dependency>
         <groupId>org.testng</groupId>
         <artifactId>testng</artifactId>
         <scope>test</scope>
      </dependency>
      <dependency>
         <groupId>net.sourceforge.findbugs</groupId>
         <artifactId>annotations</artifactId>
         <scope>provided</scope>
      </dependency>
   </dependencies>
   <build>
      <plugins>
         <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>${version.maven.compiler}</version>
            <configuration>
               <source>${java.level}</source>
               <target>${java.level}</target>
            </configuration>
         </plugin>
         <plugin>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>${version.maven.surefire}</version>
            <configuration>
               <forkCount>1</forkCount>
               <reuseForks>false</reuseForks>
               <systemPropertyVariables>
                  <java.util.logging.manager>org.apache.logging.log4j.jul.LogManager</java.util.logging.manager>
                  <org.apache.commons.logging.Log>org.apache.logging.log4j.jcl.Log4jLog</org.apache.commons.logging.Log>
               </systemPropertyVariables>
            </configuration>
         </plugin>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-source-plugin</artifactId>
            <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>
            <executions>
               <execution>
                  <id>attach-javadocs</id>
                  <goals>
                     <goal>jar</goal>
                  </goals>
               </execution>
            </executions>
         </plugin>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-checkstyle-plugin</artifactId>
            <configuration>
               <configLocation>checkstyle.xml</configLocation>
               <consoleOutput>true</consoleOutput>
               <failsOnError>true</failsOnError>
               <includeTestSourceDirectory>false</includeTestSourceDirectory>
            </configuration>
            <dependencies>
               <dependency>
                  <groupId>com.puppycrawl.tools</groupId>
                  <artifactId>checkstyle</artifactId>
                  <version>${version.checkstyle}</version>
               </dependency>
            </dependencies>
            <executions>
               <execution>
                  <id>check</id>
                  <goals>
                     <goal>check</goal>
                  </goals>
               </execution>
            </executions>
         </plugin>
      </plugins>
      <pluginManagement>
         <plugins>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-clean-plugin</artifactId>
               <version>2.5</version>
               <configuration>
                  <filesets>
                     <fileset>
                        <directory>${basedir}</directory>
                        <includes>
                           <include>logs</include>
                           <include>*.log*</include>
                        </includes>
                        <followSymlinks>false</followSymlinks>
                     </fileset>
                     <fileset>
                        <directory>${basedir}/test-output</directory>
                     </fileset>
                  </filesets>
               </configuration>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-jar-plugin</artifactId>
               <version>${version.maven.jar.plugin}</version>
               <configuration>
                  <archive>
                     <manifest>
                        <addClasspath>true</addClasspath>
                        <mainClass>io.silverware.microservices.Boot</mainClass>
                        <classpathPrefix>lib/</classpathPrefix>
                     </manifest>
                     <manifestEntries>
                        <Specification-Version>${project.version}</Specification-Version>
                        <Implementation-Version>${project.version}</Implementation-Version>
                     </manifestEntries>
                  </archive>
               </configuration>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-dependency-plugin</artifactId>
               <version>${version.maven.dependency.plugin}</version>
               <executions>
                  <execution>
                     <id>copy-dependencies</id>
                     <phase>package</phase>
                     <goals>
                        <goal>copy-dependencies</goal>
                     </goals>
                     <configuration>
                        <outputDirectory>${project.build.directory}/lib</outputDirectory>
                     </configuration>
                  </execution>
               </executions>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-release-plugin</artifactId>
               <version>${version.maven.release.plugin}</version>
               <configuration>
                  <tagNameFormat>v@{project.version}</tagNameFormat>
                  <pushChanges>false</pushChanges>
                  <localCheckout>true</localCheckout>
               </configuration>
            </plugin>
            <plugin>
               <groupId>org.codehaus.mojo</groupId>
               <artifactId>license-maven-plugin</artifactId>
               <version>${version.maven.license.plugin}</version>
               <configuration>
                  <verbose>false</verbose>
                  <addSvnKeyWords>false</addSvnKeyWords>
                  <addJavaLicenseAfterPackage>false</addJavaLicenseAfterPackage>
                  <processStartTag>-----------------------------------------------------------------------\</processStartTag>
                  <processEndTag>-----------------------------------------------------------------------/</processEndTag>
                  <sectionDelimiter> 
                  </sectionDelimiter>
                  <organizationName>the original author or authors.</organizationName>
                  <licenseName>apache_v2</licenseName>
                  <roots>
                     <root>src/main/java</root>
                     <root>src/test/java</root>
                  </roots>
               </configuration>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-source-plugin</artifactId>
               <version>${version.maven.source.plugin}</version>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-javadoc-plugin</artifactId>
               <version>${version.maven.javadoc.plugin}</version>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-checkstyle-plugin</artifactId>
               <version>${version.maven.checkstyle.plugin}</version>
            </plugin>
         </plugins>
      </pluginManagement>
   </build>
   <reporting>
      <plugins>
         <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>findbugs-maven-plugin</artifactId>
            <version>${version.maven.findbugs}</version>
         </plugin>
         <plugin>
            <artifactId>maven-project-info-reports-plugin</artifactId>
            <version>${version.maven.project.reports}</version>
            <configuration>
               <dependencyLocationsEnabled>false</dependencyLocationsEnabled>
            </configuration>
         </plugin>
      </plugins>
   </reporting>
   <profiles>
      <profile>
         <id>sign</id>
         <build>
            <plugins>
               <plugin>
                  <groupId>org.apache.maven.plugins</groupId>
                  <artifactId>maven-gpg-plugin</artifactId>
                  <version>${version.maven.gpg.plugin}</version>
                  <executions>
                     <execution>
                        <id>sign-artifacts</id>
                        <phase>verify</phase>
                        <goals>
                           <goal>sign</goal>
                        </goals>
                     </execution>
                  </executions>
               </plugin>
            </plugins>
         </build>
      </profile>
   </profiles>
</project>