<?xml version="1.0"?>
<!--
 * Copyright (c) 2012-2014, jcabi.com
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met: 1) Redistributions of source code must retain the above
 * copyright notice, this list of conditions and the following
 * disclaimer. 2) Redistributions in binary form must reproduce the above
 * copyright notice, this list of conditions and the following
 * disclaimer in the documentation and/or other materials provided
 * with the distribution. 3) Neither the name of the jcabi.com nor
 * the names of its contributors may be used to endorse or promote
 * products derived from this software without specific prior written
 * permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
 * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
 * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
 * THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
 * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
 * OF THE POSSIBILITY OF SUCH DAMAGE.
 *
 * @link http://www.sonatype.com/books/nexus-book/reference/staging-sect-managing-plugin.html
 -->
<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>
    <groupId>com.jcabi</groupId>
    <artifactId>parent</artifactId>
    <version>0.29</version>
    <packaging>pom</packaging>
    <name>parent</name>
    <description>Parent POM.xml with most oftenly used pre-configured features</description>
    <url>http://www.jcabi.com/parent</url>
    <inceptionYear>2012</inceptionYear>
    <organization>
        <name>jcabi.com</name>
        <url>http://www.jcabi.com</url>
    </organization>
    <licenses>
        <license>
            <name>BSD</name>
            <url>http://www.jcabi.com/LICENSE.txt</url>
            <distribution>repo</distribution>
            <comments>BSD License</comments>
        </license>
    </licenses>
    <developers>
        <developer>
            <id>1</id>
            <name>Yegor Bugayenko</name>
            <email>yegor@tpc2.com</email>
            <organization>TPC2.com</organization>
            <organizationUrl>http://www.tpc2.com</organizationUrl>
            <roles>
                <role>Architect</role>
                <role>Developer</role>
            </roles>
            <timezone>-7</timezone>
        </developer>
    </developers>
    <issueManagement>
        <system>github</system>
        <url>https://github.com/jcabi/jcabi-parent/issues</url>
    </issueManagement>
    <ciManagement>
        <system>travis</system>
        <url>https://travis-ci.org/jcabi/jcabi-parent</url>
    </ciManagement>
    <scm>
        <connection>scm:git:github.com:jcabi/jcabi-parent.git</connection>
        <developerConnection>scm:git:github.com:jcabi/jcabi-parent.git</developerConnection>
        <url>https://github.com/jcabi/jcabi-parent</url>
    </scm>
    <distributionManagement>
        <downloadUrl>https://oss.sonatype.org/content/groups/public</downloadUrl>
        <repository>
            <id>oss.sonatype.org</id>
            <url>https://oss.sonatype.org/service/local/staging/deploy/maven2</url>
        </repository>
        <snapshotRepository>
            <id>oss.sonatype.org</id>
            <url>https://oss.sonatype.org/content/repositories/snapshots</url>
        </snapshotRepository>
        <site>
            <id>parent.jcabi.com</id>
            <url>http://parent.jcabi.com/</url>
        </site>
    </distributionManagement>
    <prerequisites>
        <maven>3.0</maven>
    </prerequisites>
    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <!--
        ISO 8601, see http://en.wikipedia.org/wiki/ISO_8601. This
        property is defined in order to give us an ability to use ${maven.build.timestamp}
        later in the file
        -->
        <maven.build.timestamp.format>yyyy-MM-dd HH:mm</maven.build.timestamp.format>
    </properties>
    <repositories>
        <!--
        You should keep it empty in your project.
        @see http://www.sonatype.com/people/2009/02/why-putting-repositories-in-your-poms-is-a-bad-idea/
        -->
        <repository>
            <id>oss.sonatype.org</id>
            <url>https://oss.sonatype.org/content/groups/public</url>
        </repository>
    </repositories>
    <pluginRepositories>
        <!--
        You should keep it empty in your project.
        @see http://www.sonatype.com/people/2009/02/why-putting-repositories-in-your-poms-is-a-bad-idea/
        -->
        <pluginRepository>
            <id>oss.sonatype.org</id>
            <url>https://oss.sonatype.org/content/groups/public</url>
        </pluginRepository>
    </pluginRepositories>
    <profiles>
        <profile>
            <!--
            The profile deploys all artifacts to oss.sonatype.org
            repository (if you're registered there). It also skips
            default deployment plugin.
            @see http://www.jcabi.com/jcabi-parent/profile-sonatype.html
            -->
            <id>sonatype</id>
            <build>
                <pluginManagement>
                    <plugins>
                        <plugin>
                            <artifactId>maven-deploy-plugin</artifactId>
                            <configuration>
                                <skip>true</skip>
                            </configuration>
                        </plugin>
                    </plugins>
                </pluginManagement>
                <plugins>
                    <plugin>
                        <artifactId>maven-source-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>jcabi-sources</id>
                                <goals>
                                    <goal>jar</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <!--
                        Generate -javadoc.jar artifact, required by Maven Central.
                        -->
                        <artifactId>maven-javadoc-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>jcabi-javadoc</id>
                                <phase>package</phase>
                                <goals>
                                    <goal>jar</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <!-- @see http://www.sonatype.com/books/nexus-book/reference/staging-sect-deployment.html -->
                        <groupId>org.sonatype.plugins</groupId>
                        <artifactId>nexus-staging-maven-plugin</artifactId>
                        <version>1.6.2</version>
                        <extensions>true</extensions>
                        <configuration>
                            <serverId>oss.sonatype.org</serverId>
                            <nexusUrl>https://oss.sonatype.org/</nexusUrl>
                            <description>${project.version}</description>
                        </configuration>
                        <executions>
                            <execution>
                                <id>jcabi-deploy-to-sonatype</id>
                                <phase>deploy</phase>
                                <goals>
                                    <goal>deploy</goal>
                                    <goal>release</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <!--
            Static quality analysis with Qulice and other tools.
            This profile is supposed to be activated in continuous
            integration environment, right before the final approval
            of the build. It runs a number of static code analysis
            tools to validate and approve the quality of source
            code and the SCM repository.
            @see http://www.jcabi.com/jcabi-parent/profile-qulice.html
            -->
            <id>qulice</id>
            <build>
                <plugins>
                    <plugin>
                        <!--
                        Qulice-maven-plugin is a compound static analysis
                        tool that aggregates Checkstyle, PMD, FindBugs,
                        CodeNarc (for Groovy code) and a few other analyzers.
                        Qulice also configures them correctly to enable the
                        most important rules.
                        @see http://www.qulice.com/qulice-maven-plugin/
                        -->
                        <groupId>com.qulice</groupId>
                        <artifactId>qulice-maven-plugin</artifactId>
                        <version>0.10</version>
                        <executions>
                            <execution>
                                <id>jcabi-check</id>
                                <phase>verify</phase>
                                <goals>
                                    <goal>check</goal>
                                </goals>
                                <configuration>
                                    <license>file:${basedir}/LICENSE.txt</license>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <!--
            The profile builds site for production environment.
            @see http://www.jcabi.com/jcabi-parent/profile-qulice.html
            -->
            <id>site</id>
            <build>
                <plugins>
                    <plugin>
                        <!--
                        Checks the quality of Maven project documentation
                        @see http://maven.apache.org/plugins/maven-docck-plugin/index.html
                        -->
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-docck-plugin</artifactId>
                        <version>1.0</version>
                        <executions>
                            <execution>
                                <id>jcabi-check</id>
                                <!--
                                It doesn't work as expected:
                                https://jira.codehaus.org/browse/MDOCCK-27
                                -->
                                <phase>never-verify</phase>
                                <goals>
                                    <goal>check</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <artifactId>maven-site-plugin</artifactId>
                        <version>3.4</version>
                        <configuration>
                            <generateSitemap>true</generateSitemap>
                            <reportPlugins>
                                <plugin>
                                    <artifactId>maven-project-info-reports-plugin</artifactId>
                                    <version>2.7</version>
                                    <configuration>
                                        <dependencyDetailsEnabled>false</dependencyDetailsEnabled>
                                        <dependencyLocationsEnabled>false</dependencyLocationsEnabled>
                                    </configuration>
                                    <reportSets>
                                        <reportSet>
                                            <reports>
                                                <report>cim</report>
                                                <report>dependencies</report>
                                                <report>issue-tracking</report>
                                                <report>license</report>
                                                <report>mailing-list</report>
                                                <report>plugins</report>
                                                <report>project-team</report>
                                                <report>scm</report>
                                                <report>summary</report>
                                            </reports>
                                        </reportSet>
                                    </reportSets>
                                </plugin>
                                <plugin>
                                    <artifactId>maven-jxr-plugin</artifactId>
                                    <version>2.4</version>
                                    <configuration>
                                        <aggregate>true</aggregate>
                                    </configuration>
                                </plugin>
                                <plugin>
                                    <artifactId>maven-surefire-report-plugin</artifactId>
                                    <version>2.17</version>
                                    <reportSets>
                                        <reportSet>
                                            <reports>
                                                <report>report-only</report>
                                            </reports>
                                        </reportSet>
                                    </reportSets>
                                </plugin>
                                <plugin>
                                    <!--
                                    Shows reports about recent versions of plugins and deps.
                                    @see http://mojo.codehaus.org/versions-maven-plugin/
                                    -->
                                    <groupId>org.codehaus.mojo</groupId>
                                    <artifactId>versions-maven-plugin</artifactId>
                                    <version>2.1</version>
                                    <reportSets>
                                        <reportSet>
                                            <reports>
                                                <report>dependency-updates-report</report>
                                                <report>plugin-updates-report</report>
                                            </reports>
                                        </reportSet>
                                    </reportSets>
                                </plugin>
                                <plugin>
                                    <!--
                                    API documentation builder. It will produce documentation
                                    which is then to be used in site:site. It will be
                                    located at target/site/apidocs.
                                    -->
                                    <artifactId>maven-javadoc-plugin</artifactId>
                                    <configuration>
                                        <failOnError>true</failOnError>
                                        <quiet>true</quiet>
                                        <links>
                                            <link>http://download.oracle.com/javaee/6/api/</link>
                                            <link>http://sonatype.github.com/sonatype-aether/apidocs/</link>
                                            <link>http://hamcrest.org/JavaHamcrest/javadoc/1.3/</link>
                                            <link>http://docs.mockito.googlecode.com/hg/latest/</link>
                                            <link>http://www.h2database.com/javadoc/</link>
                                            <link>http://jolbox.com/bonecp/downloads/site/apidocs/</link>
                                        </links>
                                        <detectLinks>true</detectLinks>
                                        <tags>
                                            <!--
                                            Here we instruct plugin to use custom tag
                                            @link http://maven.apache.org/plugins/maven-javadoc-plugin/examples/tag-configuration.html
                                            -->
                                            <tag>
                                                <name>todo</name>
                                                <placement>a</placement>
                                                <head>To do:</head>
                                            </tag>
                                            <tag>
                                                <name>checkstyle</name>
                                                <placement>a</placement>
                                                <head>Suppressed Checkstyle violations:</head>
                                            </tag>
                                        </tags>
                                    </configuration>
                                    <reportSets>
                                        <reportSet>
                                            <id>jcabi-versioned-html</id>
                                            <reports>
                                                <report>javadoc</report>
                                            </reports>
                                            <configuration>
                                                <windowtitle>${project.name} ${project.version} API</windowtitle>
                                                <doctitle>${project.name} ${project.version} API</doctitle>
                                                <sourcepath>src/main/java</sourcepath>
                                                <destDir>apidocs-${project.version}</destDir>
                                            </configuration>
                                        </reportSet>
                                        <reportSet>
                                            <id>jcabi-versioned-test</id>
                                            <reports>
                                                <report>test-javadoc</report>
                                            </reports>
                                            <configuration>
                                                <testWindowtitle>${project.name} ${project.version} Mock API</testWindowtitle>
                                                <testDoctitle>${project.name} ${project.version} Mock API</testDoctitle>
                                                <sourcepath>src/mock/java</sourcepath>
                                                <destDir>testapidocs-${project.version}</destDir>
                                            </configuration>
                                        </reportSet>
                                    </reportSets>
                                </plugin>
                                <plugin>
                                    <groupId>org.codehaus.mojo</groupId>
                                    <artifactId>cobertura-maven-plugin</artifactId>
                                    <!-- This is the latest version that works. Version 2.6
                                    causes problems in combination with AJC compilation -->
                                    <version>2.5.2</version>
                                </plugin>
                                <plugin>
                                    <artifactId>maven-plugin-plugin</artifactId>
                                    <version>3.3</version>
                                </plugin>
                            </reportPlugins>
                        </configuration>
                        <executions>
                            <execution>
                                <id>jcabi-attach-descriptor</id>
                                <goals>
                                    <goal>attach-descriptor</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <!--
            Enable AOP AspectJ aspects. The profile is activated when you
            have a directory src/main/aspect (even if it's empty). The profile
            will apply all aspects from that folder to your classes and test
            classes, and also will apply com.jcabi:jcabi-aspects. It will
            also add JSR-303 API to the classpath.
            -->
            <id>aspectj</id>
            <activation>
                <file>
                    <exists>${basedir}/src/main/aspect</exists>
                </file>
            </activation>
            <dependencies>
                <dependency>
                    <groupId>com.jcabi</groupId>
                    <artifactId>jcabi-aspects</artifactId>
                    <scope>provided</scope>
                </dependency>
                <dependency>
                    <groupId>org.aspectj</groupId>
                    <artifactId>aspectjrt</artifactId>
                    <scope>provided</scope>
                </dependency>
                <dependency>
                    <groupId>javax.validation</groupId>
                    <artifactId>validation-api</artifactId>
                    <scope>compile</scope>
                </dependency>
                <dependency>
                    <groupId>org.hibernate</groupId>
                    <artifactId>hibernate-validator</artifactId>
                    <scope>provided</scope>
                </dependency>
                <dependency>
                   <groupId>javax.el</groupId>
                   <artifactId>javax.el-api</artifactId>
                   <scope>provided</scope>
                </dependency>
            </dependencies>
            <build>
                <plugins>
                    <plugin>
                        <groupId>com.jcabi</groupId>
                        <artifactId>jcabi-maven-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>jcabi-ajc-compile</id>
                                <phase>process-classes</phase>
                                <goals>
                                    <goal>ajc</goal>
                                </goals>
                                <configuration>
                                    <tempDirectory>${project.build.directory}/jcabi-ajc</tempDirectory>
                                    <classesDirectory>${project.build.outputDirectory}</classesDirectory>
                                    <aspectsDirectories>
                                        <directory>${project.basedir}/src/main/aspect</directory>
                                    </aspectsDirectories>
                                </configuration>
                            </execution>
                            <execution>
                                <id>jcabi-ajc-test-compile</id>
                                <phase>process-test-classes</phase>
                                <goals>
                                    <goal>ajc</goal>
                                </goals>
                                <configuration>
                                    <tempDirectory>${project.build.directory}/jcabi-ajc-test</tempDirectory>
                                    <classesDirectory>${project.build.testOutputDirectory}</classesDirectory>
                                    <aspectsDirectories>
                                        <directory>${project.basedir}/src/main/aspect</directory>
                                        <directory>${project.basedir}/src/test/aspect</directory>
                                    </aspectsDirectories>
                                    <scopes>
                                        <scope>compile</scope>
                                        <scope>provided</scope>
                                        <scope>system</scope>
                                        <scope>runtime</scope>
                                        <scope>test</scope>
                                    </scopes>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <!--
            Compile Clojure sources from src/main/clojure and src/test/clojure
            directories.
            -->
            <id>clojure</id>
            <activation>
                <file>
                    <exists>${basedir}/src/main/clojure</exists>
                </file>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>com.theoryinpractise</groupId>
                        <artifactId>clojure-maven-plugin</artifactId>
                        <version>1.3.23</version>
                        <configuration>
                            <warnOnReflection>true</warnOnReflection>
                            <vmargs>-Dlog4j.configuration=file:${basedir}/src/test/resources/log4j.properties</vmargs>
                        </configuration>
                        <executions>
                            <execution>
                                <id>jcabi-clojure</id>
                                <goals>
                                    <goal>add-source</goal>
                                    <goal>add-test-source</goal>
                                    <goal>compile</goal>
                                    <goal>test</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <!--
            Compile Groovy sources from src/main/groovy and src/test/groovy
            directories.
            -->
            <id>groovy</id>
            <activation>
                <file>
                    <exists>${basedir}/src/main/groovy</exists>
                </file>
            </activation>
            <dependencies>
                <dependency>
                    <groupId>org.codehaus.groovy</groupId>
                    <artifactId>groovy-all</artifactId>
                </dependency>
            </dependencies>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.codehaus.gmaven</groupId>
                        <artifactId>gmaven-plugin</artifactId>
                        <version>1.5</version>
                        <configuration>
                            <verbose>true</verbose>
                            <stacktrace>true</stacktrace>
                            <providerSelection>2.0</providerSelection>
                        </configuration>
                        <executions>
                            <execution>
                                <id>jcabi-groovy</id>
                                <goals>
                                    <goal>compile</goal>
                                    <goal>testCompile</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <!--
            This profile configures site deployment to github pages. See
            http://pages.github.com/
            http://github.github.com/maven-plugins/site-plugin/site-mojo.html
            -->
            <id>gh-pages</id>
            <activation>
                <file>
                    <exists>${basedir}/src/site/resources/CNAME</exists>
                </file>
            </activation>
            <properties>
                <github.global.server>github</github.global.server>
            </properties>
            <build>
                <plugins>
                    <plugin>
                        <artifactId>maven-site-plugin</artifactId>
                        <configuration>
                            <skipDeploy>true</skipDeploy>
                        </configuration>
                    </plugin>
                    <plugin>
                        <groupId>com.github.github</groupId>
                        <artifactId>site-maven-plugin</artifactId>
                        <configuration>
                            <message>site for ${project.version}</message>
                            <path>${site.path}</path>
                            <merge>true</merge>
                        </configuration>
                        <executions>
                            <execution>
                                <phase>site-deploy</phase>
                                <goals>
                                    <goal>site</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <!--
            Sign artifacts before installation with GPG. To enable
            this profile you should have "gpg.keyname" property defined.
            -->
            <id>jcabi-gpg</id>
            <activation>
                <property>
                    <name>gpg.keyname</name>
                </property>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <!--
                        To GPG-sign the artifact before deployment to foreign
                        repository. GPG keys have to be provided in CI
                        environment, and published beforehand.
                        @link http://www.sonatype.com/people/2010/01/how-to-generate-pgp-signatures-with-maven/
                        -->
                        <artifactId>maven-gpg-plugin</artifactId>
                        <version>1.5</version>
                        <executions>
                            <execution>
                                <id>jcabi-sign-artifacts</id>
                                <phase>verify</phase>
                                <goals>
                                    <goal>sign</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <!--
            Package MOCK artifact. The profile is activated when you have
            a directory "/src/mock/java" available. The profile will create
            and install a new artifact with "mock" classifier, which will
            include all sources from that src/mock/java folder and all
            required resources.
            -->
            <id>jcabi-mock</id>
            <activation>
                <file>
                    <exists>${basedir}/src/mock/java</exists>
                </file>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.codehaus.mojo</groupId>
                        <artifactId>build-helper-maven-plugin</artifactId>
                        <version>1.9</version>
                        <executions>
                            <execution>
                                <id>jcabi-add-test-sources</id>
                                <phase>validate</phase>
                                <goals>
                                    <goal>add-test-source</goal>
                                </goals>
                                <configuration>
                                    <sources>
                                        <source>${basedir}/src/mock/java</source>
                                    </sources>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <artifactId>maven-jar-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>jcabi-mock-artifact</id>
                                <phase>package</phase>
                                <goals>
                                    <goal>jar</goal>
                                </goals>
                                <configuration>
                                    <classesDirectory>${project.build.testOutputDirectory}</classesDirectory>
                                    <archive>
                                        <index>true</index>
                                        <manifest>
                                            <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
                                        </manifest>
                                    </archive>
                                    <classifier>mock</classifier>
                                    <includes>
                                        <include>**/*Mocker.class</include>
                                        <include>**/*Mocker$*.class</include>
                                    </includes>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <!--
            Start maven-invoker-plugin when src/it folder is present.
            -->
            <id>jcabi-invoker</id>
            <activation>
                <file>
                    <exists>${basedir}/src/it</exists>
                </file>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <artifactId>maven-invoker-plugin</artifactId>
                        <executions>
                            <execution>
                                <goals>
                                    <goal>install</goal>
                                    <goal>run</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <!--
            Generate ANTLR3 grammar. The profile is activated when you have
            a directory src/main/antlr3. It will activate an ANTLR3 compiler and
            add a runtime ANTLR3 dependency.
            -->
            <id>jcabi-antlr3</id>
            <activation>
                <file>
                    <exists>${basedir}/src/main/antlr3</exists>
                </file>
            </activation>
            <dependencies>
                <dependency>
                    <groupId>org.antlr</groupId>
                    <artifactId>antlr-runtime</artifactId>
                </dependency>
            </dependencies>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.antlr</groupId>
                        <artifactId>antlr3-maven-plugin</artifactId>
                        <version>3.5.2</version>
                        <executions>
                            <execution>
                                <id>jcabi-antlr3</id>
                                <phase>generate-sources</phase>
                                <goals>
                                    <goal>antlr</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>antlr4</id>
            <activation>
                <file>
                    <exists>${basedir}/src/main/antlr4</exists>
                </file>
            </activation>
            <dependencies>
                <dependency>
                    <groupId>org.antlr</groupId>
                    <artifactId>antlr4-runtime</artifactId>
                </dependency>
                <dependency>
                    <groupId>org.antlr</groupId>
                    <artifactId>antlr4-annotations</artifactId>
                </dependency>
            </dependencies>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.antlr</groupId>
                        <artifactId>antlr4-maven-plugin</artifactId>
                        <version>4.3</version>
                        <configuration>
                            <sourceDirectory>src/main/antlr4</sourceDirectory>
                        </configuration>
                        <executions>
                            <execution>
                                <id>jcabi-antlr4</id>
                                <phase>generate-sources</phase>
                                <goals>
                                    <goal>antlr4</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <!--
            Enable unit testing. The profile is activated when you have
            src/test/java directory in the project. It will add junit, hamcrest,
            and mockito artifacts to the classpath ("test" scope).
            -->
            <id>jcabi-junit</id>
            <activation>
                <file>
                    <exists>${basedir}/src/test/java</exists>
                </file>
            </activation>
            <dependencies>
                <dependency>
                    <groupId>junit</groupId>
                    <artifactId>junit</artifactId>
                    <scope>test</scope>
                </dependency>
                <dependency>
                    <groupId>org.hamcrest</groupId>
                    <artifactId>hamcrest-core</artifactId>
                    <scope>test</scope>
                </dependency>
                <dependency>
                    <groupId>org.hamcrest</groupId>
                    <artifactId>hamcrest-library</artifactId>
                    <scope>test</scope>
                </dependency>
                <dependency>
                    <groupId>org.mockito</groupId>
                    <artifactId>mockito-core</artifactId>
                    <scope>test</scope>
                </dependency>
            </dependencies>
        </profile>
        <profile>
            <!--
            Enable LOG4J for testing and SLF4J binding. The profile is activated
            when you have src/test/resources/log4j.properties. When this file
            is present it means that you want your SLF4J logs to be sent to
            LOG4J during testing time. The profile will add required bindings
            to the classpath.
            -->
            <id>jcabi-slf4j</id>
            <activation>
                <file>
                    <exists>${basedir}/src/test/resources/log4j.properties</exists>
                </file>
            </activation>
            <dependencies>
                <dependency>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-log4j12</artifactId>
                    <scope>test</scope>
                </dependency>
                <dependency>
                    <groupId>log4j</groupId>
                    <artifactId>log4j</artifactId>
                    <scope>test</scope>
                </dependency>
            </dependencies>
        </profile>
        <profile>
            <!--
            It is a fix for schemagen in JDK7.
            -->
            <id>jcabi-jdk7-fix</id>
            <activation>
                <file>
                    <exists>${java.home}/../lib/tools.jar</exists>
                </file>
            </activation>
            <build>
                <pluginManagement>
                    <plugins>
                        <plugin>
                            <groupId>com.sun.tools.jxc.maven2</groupId>
                            <artifactId>maven-jaxb-schemagen-plugin</artifactId>
                            <dependencies>
                                <dependency>
                                    <groupId>com.sun</groupId>
                                    <artifactId>tools</artifactId>
                                    <version>1.7</version>
                                    <scope>system</scope>
                                    <systemPath>${java.home}/../lib/tools.jar</systemPath>
                                </dependency>
                            </dependencies>
                        </plugin>
                        <plugin>
                            <artifactId>maven-plugin-plugin</artifactId>
                            <dependencies>
                                <dependency>
                                    <groupId>com.sun</groupId>
                                    <artifactId>tools</artifactId>
                                    <version>1.7</version>
                                    <scope>system</scope>
                                    <systemPath>${java.home}/../lib/tools.jar</systemPath>
                                </dependency>
                            </dependencies>
                        </plugin>
                    </plugins>
                </pluginManagement>
            </build>
        </profile>
        <profile>
            <!--
            For every Java package it creates a VERSION.txt file in
            "src/main/resources" directory. This is done in order to help
            with identification of currently used version of a package.
            -->
            <id>jcabi-versionalize-packages</id>
            <activation>
                <file>
                    <exists>${basedir}/src/main/java</exists>
                </file>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>com.jcabi</groupId>
                        <artifactId>jcabi-maven-plugin</artifactId>
                        <version>0.9.3</version>
                        <executions>
                            <execution>
                                <id>jcabi-versionalize-packages</id>
                                <goals>
                                    <goal>versionalize</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>
    <dependencyManagement>
        <dependencies>
            <dependency>
                <!--
                Aether wrapper.
                @see http://aether.jcabi.com/
                -->
                <groupId>com.jcabi</groupId>
                <artifactId>jcabi-aether</artifactId>
                <version>0.10</version>
            </dependency>
            <dependency>
                <!--
                AOP Aspects.
                @see http://aspects.jcabi.com/
                -->
                <groupId>com.jcabi</groupId>
                <artifactId>jcabi-aspects</artifactId>
                <version>0.18</version>
            </dependency>
            <dependency>
                <!--
                AWS DynamoDB object layer.
                @see http://dynamo.jcabi.com/
                -->
                <groupId>com.jcabi</groupId>
                <artifactId>jcabi-dynamo</artifactId>
                <version>0.16.2</version>
            </dependency>
            <dependency>
                <!--
                Github API.
                @see http://github.jcabi.com
                -->
                <groupId>com.jcabi</groupId>
                <artifactId>jcabi-github</artifactId>
                <version>0.15</version>
            </dependency>
            <dependency>
                <!--
                HTTP client.
                @see http://http.jcabi.com/
                -->
                <groupId>com.jcabi</groupId>
                <artifactId>jcabi-http</artifactId>
                <version>1.8.3</version>
            </dependency>
            <dependency>
                <!--
                Immutable collections.
                @see http://immutable.jcabi.com/
                -->
                <groupId>com.jcabi</groupId>
                <artifactId>jcabi-immutable</artifactId>
                <version>1.3</version>
            </dependency>
            <dependency>
                <!--
                JDBC wrapper.
                @see http://jdbc.jcabi.com/
                -->
                <groupId>com.jcabi</groupId>
                <artifactId>jcabi-jdbc</artifactId>
                <version>0.13</version>
            </dependency>
            <dependency>
                <!--
                Logging facility.
                @see http://log.jcabi.com/
                -->
                <groupId>com.jcabi</groupId>
                <artifactId>jcabi-log</artifactId>
                <version>0.14.3</version>
            </dependency>
            <dependency>
                <!--
                Reader of META-INF/MANIFEST.MF files
                @see http://manifests.jcabi.com/
                -->
                <groupId>com.jcabi</groupId>
                <artifactId>jcabi-manifests</artifactId>
                <version>1.0.4</version>
            </dependency>
            <dependency>
                <!--
                XHTML Hamcrest matchers.
                @see http://matchers.jcabi.com/
                -->
                <groupId>com.jcabi</groupId>
                <artifactId>jcabi-matchers</artifactId>
                <version>1.2</version>
            </dependency>
            <dependency>
                <!--
                Maven to SLF4J binding.
                @see http://slf4j.jcabi.com/
                -->
                <groupId>com.jcabi</groupId>
                <artifactId>jcabi-maven-slf4j</artifactId>
                <version>0.9</version>
            </dependency>
            <dependency>
                <!--
                Odesk SDK.
                @see http://odesk.jcabi.com/
                -->
                <groupId>com.jcabi</groupId>
                <artifactId>jcabi-odesk</artifactId>
                <version>0.5</version>
            </dependency>
            <dependency>
                <!--
                Amazon S3 adapter.
                @see http://s3.jcabi.com/
                -->
                <groupId>com.jcabi</groupId>
                <artifactId>jcabi-s3</artifactId>
                <version>0.6.1</version>
            </dependency>
            <dependency>
                <!--
                AWS SimpleDB object layer.
                @see http://simpledb.jcabi.com/
                -->
                <groupId>com.jcabi</groupId>
                <artifactId>jcabi-simpledb</artifactId>
                <version>0.3</version>
            </dependency>
            <dependency>
                <!--
                SSH client.
                @see http://ssh.jcabi.com/
                -->
                <groupId>com.jcabi</groupId>
                <artifactId>jcabi-ssh</artifactId>
                <version>1.0</version>
            </dependency>
            <dependency>
                <!--
                URN.
                @see http://urn.jcabi.com/
                -->
                <groupId>com.jcabi</groupId>
                <artifactId>jcabi-urn</artifactId>
                <version>0.9</version>
            </dependency>
            <dependency>
                <!--
                Velocity wrapper.
                @see http://velocity.jcabi.com/
                -->
                <groupId>com.jcabi</groupId>
                <artifactId>jcabi-velocity</artifactId>
                <version>0.9</version>
            </dependency>
            <dependency>
                <!--
                W3C adapters.
                @see http://w3c.jcabi.com/
                -->
                <groupId>com.jcabi</groupId>
                <artifactId>jcabi-w3c</artifactId>
                <version>1.1</version>
            </dependency>
            <dependency>
                <!--
                XML parsing and printing.
                @see http://xml.jcabi.com/
                -->
                <groupId>com.jcabi</groupId>
                <artifactId>jcabi-xml</artifactId>
                <version>0.12.1</version>
            </dependency>
            <dependency>
                <!-- JSON API -->
                <groupId>javax.json</groupId>
                <artifactId>javax.json-api</artifactId>
                <version>1.0</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <!-- JSON reference implementation -->
                <groupId>org.glassfish</groupId>
                <artifactId>javax.json</artifactId>
                <version>1.0.4</version>
                <scope>runtime</scope>
            </dependency>
            <dependency>
                <!-- JSR-311 JAX-RS API -->
                <groupId>javax.ws.rs</groupId>
                <artifactId>jsr311-api</artifactId>
                <version>1.1.1</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <!-- JAXB API -->
                <groupId>javax.xml.bind</groupId>
                <artifactId>jaxb-api</artifactId>
                <version>2.2.11</version>
                <exclusions>
                    <exclusion>
                        <groupId>javax.xml.bind</groupId>
                        <artifactId>jsr173_api</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <!--
                Google Guava
                @see https://code.google.com/p/guava-libraries/
                -->
                <groupId>com.google.guava</groupId>
                <artifactId>guava</artifactId>
                <version>18.0</version>
            </dependency>
            <dependency>
                <!--
                Commons Lang3
                @see http://commons.apache.org/lang/
                -->
                <groupId>org.apache.commons</groupId>
                <artifactId>commons-lang3</artifactId>
                <version>3.3.2</version>
            </dependency>
            <dependency>
                <!--
                Commons Math3
                @see http://commons.apache.org/proper/commons-math/
                -->
                <groupId>org.apache.commons</groupId>
                <artifactId>commons-math3</artifactId>
                <version>3.3</version>
            </dependency>
            <dependency>
                <!--
                Base64 and other codecs
                @see http://commons.apache.org/codec/
                -->
                <groupId>commons-codec</groupId>
                <artifactId>commons-codec</artifactId>
                <version>1.9</version>
            </dependency>
            <dependency>
                <!--
                Net utils.
                @see http://commons.apache.org/net/
                -->
                <groupId>commons-net</groupId>
                <artifactId>commons-net</artifactId>
                <version>3.3</version>
            </dependency>
            <dependency>
                <!--
                For file/stream manipulations
                @see http://commons.apache.org/io/
                -->
                <groupId>commons-io</groupId>
                <artifactId>commons-io</artifactId>
                <version>2.4</version>
            </dependency>
            <dependency>
                <!--
                This library simplifies collections-management operations.
                @see http://commons.apache.org/collections/
                -->
                <groupId>commons-collections</groupId>
                <artifactId>commons-collections</artifactId>
                <version>3.2.1</version> <!-- don't change this line, 3.2.1 is the right/latest -->
            </dependency>
            <dependency>
                <!--
                Runtime component of AspectJ.
                -->
                <groupId>org.aspectj</groupId>
                <artifactId>aspectjrt</artifactId>
                <version>1.8.2</version>
            </dependency>
            <dependency>
                <!--
                JSR-303 Vaidation API.
                -->
                <groupId>javax.validation</groupId>
                <artifactId>validation-api</artifactId>
                <version>1.1.0.Final</version>
            </dependency>
            <dependency>
                <!--
                JSR-303 implementation by Hibernate.
                -->
                <groupId>org.hibernate</groupId>
                <artifactId>hibernate-validator</artifactId>
                <version>5.1.2.Final</version>
            </dependency>
            <dependency>
                <!-- Required for Hibernate validator -->
               <groupId>javax.el</groupId>
               <artifactId>javax.el-api</artifactId>
               <version>3.0.1-b04</version>
            </dependency>
            <dependency>
                <!-- Clojure -->
                <groupId>org.clojure</groupId>
                <artifactId>clojure</artifactId>
                <version>1.6.0</version>
            </dependency>
            <dependency>
                <!-- Clojure -->
                <groupId>org.clojure</groupId>
                <artifactId>clojure-contrib</artifactId>
                <version>1.2.0</version>
            </dependency>
            <dependency>
                <!-- Clojure -->
                <groupId>org.clojure</groupId>
                <artifactId>tools.logging</artifactId>
                <version>0.3.1</version>
            </dependency>
            <dependency>
                <!-- Servlet API -->
                <groupId>javax.servlet</groupId>
                <artifactId>servlet-api</artifactId>
                <version>3.0-alpha-1</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <!--
                Compile-time annotations.
                @see http://projectlombok.org/features/index.html
                -->
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <version>1.14.8</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <!-- XML APIs. -->
                <groupId>xml-apis</groupId>
                <artifactId>xml-apis</artifactId>
                <!-- 1.3.04 is the latest version, don't upgrade it unless
                you explicitly check it in Maven Central. Version 2.0.2 is published
                there, but it's outdated (June 2007), while 1.3.04 is the latest.
                -->
                <version>1.4.01</version> <!-- don't change this line, 1.4.01 is the right/latest version -->
            </dependency>
            <dependency>
                <!--
                We are using JUnit framework for unit test organization
                and management. This framework is the most stable and mature
                in the market. Other options considered: TestNG.
                @link http://www.junit.org/
                -->
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>4.11</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.hamcrest</groupId>
                        <artifactId>hamcrest-core</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <!--
                Assertions and matchers for unit tests.
                @link http://code.google.com/p/hamcrest/wiki/Tutorial
                -->
                <groupId>org.hamcrest</groupId>
                <artifactId>hamcrest-core</artifactId>
                <version>1.3</version>
            </dependency>
            <dependency>
                <!--
                Assertions and matchers for unit tests.
                @link http://code.google.com/p/hamcrest/wiki/Tutorial
                -->
                <groupId>org.hamcrest</groupId>
                <artifactId>hamcrest-library</artifactId>
                <version>1.3</version>
            </dependency>
            <dependency>
                <!--
                Mockito is used as a mocking library during testing.
                Other options: jMock.
                @link http://www.mockito.org/
                -->
                <groupId>org.mockito</groupId>
                <artifactId>mockito-core</artifactId>
                <version>1.9.5</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.hamcrest</groupId>
                        <artifactId>hamcrest-core</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <!-- Forward all SLF4J calls to LOG4J. -->
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-log4j12</artifactId>
                <version>1.7.7</version>
            </dependency>
            <dependency>
                <!-- Use LOG4J logging facility for all loggings. -->
                <groupId>log4j</groupId>
                <artifactId>log4j</artifactId>
                <version>1.2.17</version>
            </dependency>
            <dependency>
                <!--
                ANTLR3 Parser/Lexer
                @link http://www.antlr.org/
                -->
                <groupId>org.antlr</groupId>
                <artifactId>antlr-runtime</artifactId>
                <version>3.5.2</version>
            </dependency>
            <dependency>
                <groupId>org.antlr</groupId>
                <artifactId>antlr4-runtime</artifactId>
                <version>4.3</version>
            </dependency>
            <dependency>
                <groupId>org.antlr</groupId>
                <artifactId>antlr4-annotations</artifactId>
                <version>4.3</version>
            </dependency>
            <dependency>
                <groupId>org.codehaus.groovy</groupId>
                <artifactId>groovy-all</artifactId>
                <version>2.3.3</version>
            </dependency>
        </dependencies>
    </dependencyManagement>
    <build>
        <resources>
            <!--
            Filter resources in "process-resources" phase
            @link http://maven.apache.org/plugins/maven-resources-plugin/examples/filter.html
            -->
            <resource>
                <directory>${basedir}/src/main/resources</directory>
                <filtering>true</filtering>
            </resource>
        </resources>
        <testResources>
            <!--
            Filter resources in "process-resources" phase
            @link http://maven.apache.org/plugins/maven-resources-plugin/examples/filter.html
            -->
            <testResource>
                <directory>${basedir}/src/test/resources</directory>
                <filtering>true</filtering>
            </testResource>
        </testResources>
        <extensions>
            <extension>
                <!--
                This extension enables deployment of artifacts to
                Amazon S3 repository.
                -->
                <groupId>org.kuali.maven.wagons</groupId>
                <artifactId>maven-s3-wagon</artifactId>
                <version>1.2.1</version>
            </extension>
        </extensions>
        <plugins>
            <plugin>
                <!--
                This plugin will collect current build number
                from Git and save it into Maven property
                -->
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>buildnumber-maven-plugin</artifactId>
                <version>1.3</version>
                <executions>
                    <execution>
                        <id>jcabi-build-number</id>
                        <phase>generate-resources</phase>
                        <goals>
                            <goal>create</goal>
                            <goal>create-timestamp</goal>
                        </goals>
                        <configuration>
                            <buildNumberPropertyName>buildNumber</buildNumberPropertyName>
                            <timestampPropertyName>timestamp</timestampPropertyName>
                            <timestampFormat>{0,date,yyyy-MM-dd'T'HH:mm:ss}</timestampFormat>
                            <doCheck>false</doCheck>
                            <doUpdate>false</doUpdate>
                            <getRevisionOnlyOnce>true</getRevisionOnlyOnce>
                            <shortRevisionLength>7</shortRevisionLength>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>com.jcabi</groupId>
                    <artifactId>jcabi-maven-plugin</artifactId>
                    <version>0.9.3</version>
                </plugin>
                <plugin>
                    <groupId>com.jcabi</groupId>
                    <artifactId>jcabi-mysql-maven-plugin</artifactId>
                    <version>0.8.1</version>
                </plugin>
                <plugin>
                    <groupId>com.jcabi</groupId>
                    <artifactId>jcabi-dynamodb-maven-plugin</artifactId>
                    <version>0.7.1</version>
                </plugin>
                <plugin>
                    <groupId>com.jcabi</groupId>
                    <artifactId>jcabi-ssl-maven-plugin</artifactId>
                    <version>0.9</version>
                </plugin>
                <plugin>
                    <groupId>com.jcabi</groupId>
                    <artifactId>jcabi-heroku-maven-plugin</artifactId>
                    <version>0.9</version>
                </plugin>
                <plugin>
                    <groupId>com.jcabi</groupId>
                    <artifactId>jcabi-beanstalk-maven-plugin</artifactId>
                    <version>0.10</version>
                </plugin>
                <plugin>
                    <!--
                    Code coverage tool.
                    -->
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>cobertura-maven-plugin</artifactId>
                    <version>2.5.2</version> <!-- don't upgrade it, see https://github.com/jcabi/parent/issues/1 -->
                </plugin>
                <plugin>
                    <artifactId>maven-antrun-plugin</artifactId>
                    <version>1.7</version>
                    <dependencies>
                        <dependency>
                            <groupId>ant-contrib</groupId>
                            <artifactId>ant-contrib</artifactId>
                            <version>1.0b3</version>
                            <exclusions>
                                <exclusion>
                                    <groupId>ant</groupId>
                                    <artifactId>ant</artifactId>
                                </exclusion>
                            </exclusions>
                        </dependency>
                    </dependencies>
                </plugin>
                <plugin>
                    <artifactId>maven-assembly-plugin</artifactId>
                    <version>2.4.1</version>
                </plugin>
                <plugin>
                    <artifactId>maven-changes-plugin</artifactId>
                    <version>2.10</version>
                </plugin>
                <plugin>
                    <artifactId>maven-clean-plugin</artifactId>
                    <version>2.5</version>
                </plugin>
                <plugin>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.1</version>
                    <configuration>
                        <source>1.6</source>
                        <target>1.6</target>
                        <optimize>true</optimize>
                        <showWarnings>true</showWarnings>
                        <showDeprecation>true</showDeprecation>
                        <compilerArgs>
                            <arg>-Xlint</arg>
                            <arg>-Werror</arg>
                            <arg>-Xlint:-path</arg>
                            <!-- @see https://blogs.oracle.com/darcy/entry/bootclasspath_older_source -->
                            <arg>-Xlint:-options</arg>
                            <!-- @see http://netbeans.org/bugzilla/show_bug.cgi?format=multiple&id=208666 -->
                            <!-- this is to avoid a problem with ANTLR and JDK7 -->
                            <arg>-Xlint:-classfile</arg>
                            <!-- ignore APT warnings -->
                            <arg>-Xlint:-processing</arg>
                        </compilerArgs>
                        <testExcludes>
                            <exclude>**/package-info.java</exclude>
                        </testExcludes>
                    </configuration>
                </plugin>
                <plugin>
                    <artifactId>maven-dependency-plugin</artifactId>
                    <version>2.8</version>
                </plugin>
                <plugin>
                    <artifactId>maven-deploy-plugin</artifactId>
                    <version>2.8.1</version>
                </plugin>
                <plugin>
                    <artifactId>maven-failsafe-plugin</artifactId>
                    <version>2.17</version>
                    <configuration>
                        <encoding>${project.build.sourceEncoding}</encoding>
                        <failIfNoSpecifiedTests>false</failIfNoSpecifiedTests>
                        <forkCount>0</forkCount>
                        <parallel>all</parallel>
                        <parallelTestsTimeoutForcedInSeconds>0</parallelTestsTimeoutForcedInSeconds>
                        <parallelTestsTimeoutInSeconds>0</parallelTestsTimeoutInSeconds>
                        <perCoreThreadCount>true</perCoreThreadCount>
                        <runOrder>random</runOrder>
                        <threadCount>8</threadCount>
                    </configuration>
                </plugin>
                <plugin>
                    <artifactId>maven-help-plugin</artifactId>
                    <version>2.2</version>
                </plugin>
                <plugin>
                    <artifactId>maven-install-plugin</artifactId>
                    <version>2.5.1</version>
                    <configuration>
                        <createChecksum>true</createChecksum>
                    </configuration>
                </plugin>
                <plugin>
                    <artifactId>maven-invoker-plugin</artifactId>
                    <version>1.9</version>
                    <configuration>
                        <mergeUserSettings>true</mergeUserSettings>
                        <cloneProjectsTo>${project.build.directory}/it</cloneProjectsTo>
                        <debug>false</debug>
                        <localRepositoryPath>${project.build.directory}/local-repo</localRepositoryPath>
                        <noLog>false</noLog>
                        <postBuildHookScript>verify</postBuildHookScript>
                        <preBuildHookScript>setup</preBuildHookScript>
                        <projectsDirectory>src/it</projectsDirectory>
                        <settingsFile>${basedir}/src/it/settings.xml</settingsFile>
                        <showErrors>true</showErrors>
                        <showVersion>false</showVersion>
                        <streamLogs>true</streamLogs>
                    </configuration>
                </plugin>
                <plugin>
                    <artifactId>maven-jar-plugin</artifactId>
                    <version>2.5</version>
                </plugin>
                <plugin>
                    <artifactId>maven-javadoc-plugin</artifactId>
                    <version>2.9.1</version>
                </plugin>
                <plugin>
                    <artifactId>maven-plugin-plugin</artifactId>
                    <version>3.2</version>
                </plugin>
                <plugin>
                    <artifactId>maven-release-plugin</artifactId>
                    <version>2.5</version>
                </plugin>
                <plugin>
                    <artifactId>maven-resources-plugin</artifactId>
                    <version>2.6</version>
                </plugin>
                <plugin>
                    <artifactId>maven-site-plugin</artifactId>
                    <version>3.4</version>
                    <configuration>
                        <reportPlugins>
                            <!--
                            Section is intentionally empty. Full list of plugins
                            is configured in "CI" profile. We don't need all them
                            during development, that's why they are not here.
                            -->
                        </reportPlugins>
                    </configuration>
                    <dependencies>
                        <dependency>
                            <groupId>org.apache.maven.doxia</groupId>
                            <artifactId>doxia-module-markdown</artifactId>
                            <version>1.3</version>
                        </dependency>
                    </dependencies>
                </plugin>
                <plugin>
                    <artifactId>maven-source-plugin</artifactId>
                    <version>2.3</version>
                </plugin>
                <plugin>
                    <!--
                    Starts unit tests, protocols their results and creates
                    a summary report. It is required to send testing protocol
                    to the STDOUT as well, not only to the file.
                    -->
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>2.17</version>
                    <configuration>
                        <useFile>false</useFile>
                        <runOrder>random</runOrder>
                        <trimStackTrace>false</trimStackTrace>
                        <failIfNoTests>false</failIfNoTests>
                        <failIfNoSpecifiedTests>true</failIfNoSpecifiedTests>
                        <parallel>all</parallel>
                        <parallelTestsTimeoutInSeconds>0</parallelTestsTimeoutInSeconds>
                        <parallelTestsTimeoutForcedInSeconds>0</parallelTestsTimeoutForcedInSeconds>
                        <perCoreThreadCount>true</perCoreThreadCount>
                        <threadCount>4</threadCount>
                    </configuration>
                </plugin>
                <plugin>
                    <artifactId>maven-war-plugin</artifactId>
                    <version>2.4</version>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>versions-maven-plugin</artifactId>
                    <version>2.1</version>
                    <configuration>
                        <generateBackupPoms>false</generateBackupPoms>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>com.github.github</groupId>
                    <artifactId>site-maven-plugin</artifactId>
                    <version>0.10</version>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>
    <reporting>
        <!--
        Rudimentary section, for Maven 2.0 plugins mostly.
        -->
        <excludeDefaults/>
    </reporting>
</project>
