<?xml version="1.0" encoding="UTF-8"?>
<!--
        COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Notice

The contents of this file are subject to the COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL)
Version 1.0 (the "License"); you may not use this file except in
compliance with the License. A copy of the License is available at
http://www.opensource.org/licenses/cddl1.txt

The Original Code is Drombler.org. The Initial Developer of the
Original Code is Florian Brunner (Sourceforge.net user: puce).
Copyright 2012 Drombler.org. All Rights Reserved.

Contributor(s): .
-->
<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>
    <parent>
        <groupId>org.softsmithy</groupId>
        <artifactId>softsmithy-parent</artifactId>
        <version>2.7</version>
        <relativePath />
    </parent>
    
    <groupId>org.drombler</groupId>
    <artifactId>drombler-oss-parent</artifactId>
    <packaging>pom</packaging>
    <version>2.2</version>
    
    <name>Drombler OSS - Parent POM</name>
    <url>http://www.drombler.org</url>
    <description>This Drombler OSS Parent POM should be the parent (either directly or indirectly) of every Drombler project unless there is a good reason to do otherwise (in which case the reason should be documented).</description>
    <inceptionYear>2012</inceptionYear>
    <organization>
        <name>Drombler</name>
        <url>http://www.drombler.com</url>
    </organization>
    
    <scm>
        <connection>scm:git:https://github.com/Drombler/drombler-oss-parent.git</connection>
        <developerConnection>scm:git:git@github.com:Drombler/drombler-oss-parent.git</developerConnection>
        <url>https://github.com/Drombler/drombler-oss-parent</url>
        <tag>HEAD</tag>
    </scm>

    <issueManagement>
        <system>SourceForge.net</system>
        <url>http://sourceforge.net/p/drombler/tickets/</url>
    </issueManagement>
    
    <licenses>
        <license>
            <name>COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0</name>
            <distribution>repo</distribution>
            <!--<url>http://java.sun.com/spl.html</url>-->
            <url>LICENSE.txt</url>
        </license>
    </licenses>

    <properties>
        
        <!-- Dev Environment Defaults -->
        <netbeans.hint.license>drombler-oss</netbeans.hint.license>
        
        <!-- TODO: consider to support  -Xdoclint:all -->
        <java.compiler.compilerArgument>-Xlint:all,-serial</java.compiler.compilerArgument>
        <excludePackageNames>*.internal.*:*.impl.*</excludePackageNames> <!-- used by Javadoc plugin --><!-- TODO: get this from OSGi meta data-->
        <excludePackageNamesAggregate>${excludePackageNames}:*.maven.plugin.*:*.samples.*:tutorial.*</excludePackageNamesAggregate>
        <java.min.version>1.8</java.min.version>
        <jaxb.locale>en</jaxb.locale>
        
        <!-- Plugin Versions Defaults -->
        <plugin.exec.version>1.4.0</plugin.exec.version>
        <plugin.jaxb.version>0.11.0</plugin.jaxb.version>
        <plugin.felix-scr.version>1.20.0</plugin.felix-scr.version>
        <plugin.plugin-plugin.version>3.4</plugin.plugin-plugin.version>
        <plugin.asciidoctor.version>1.5.2</plugin.asciidoctor.version>
        
        <!-- Dependency Versions Defaults -->
        <dependency.osgi-core.version>6.0.0</dependency.osgi-core.version>
        <dependency.osgi-compendium.version>5.0.0</dependency.osgi-compendium.version>
        <dependency.felix-framework.version>4.6.0</dependency.felix-framework.version>
        <dependency.felix-scr.version>1.8.2</dependency.felix-scr.version>
        <dependency.felix-scr-annotations.version>1.9.10</dependency.felix-scr-annotations.version>
        <dependency.commons-lang3.version>3.1</dependency.commons-lang3.version>
        <dependency.softsmithy.version>0.5</dependency.softsmithy.version>
        <dependency.junit.version>4.11</dependency.junit.version>
        <dependency.slf4j.version>1.7.6</dependency.slf4j.version>
        <dependency.maven-plugin-api.version>3.2.5</dependency.maven-plugin-api.version>
        <dependency.maven-plugin-annotations.version>3.4</dependency.maven-plugin-annotations.version>
        <dependency.maven-project.version>3.0-alpha-2</dependency.maven-project.version>
        <dependency.maven-jar-plugin.version>2.6</dependency.maven-jar-plugin.version>
        <dependency.maven-pax-plugin.version>1.5</dependency.maven-pax-plugin.version>
        
        <!-- CDI dependency versions -->
        <dependency.pax-cdi.version>0.11.0</dependency.pax-cdi.version>
        <dependency.weld.version>2.2.9.Final</dependency.weld.version>
        <dependency.guava.version>13.0.1</dependency.guava.version>
        <dependency.jboss-logging.version>3.1.3.GA</dependency.jboss-logging.version>
        <dependency.cdi-api.version>1.2</dependency.cdi-api.version>
        <dependency.javax-inject.version>1</dependency.javax-inject.version>
        <dependency.glassfish-javax-inject.version>2.4.0-b05</dependency.glassfish-javax-inject.version>

        <!-- Reporting Defaults -->
        <reporting.javadoc.skip>false</reporting.javadoc.skip>
    </properties>

    <!-- Not inherited!?? -->
    <prerequisites>
        <maven>${maven.version}</maven>
    </prerequisites>

    <build>
        <pluginManagement>        
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-javadoc-plugin</artifactId>
                    <configuration>
                        <!-- Exclude Xdoclint group syntax, because the Javadoc generated by XJC is not correct.
    ,                   See issues:
                        https://java.net/jira/browse/JAXB-1023
                        http://jira.codehaus.org/browse/MJAVADOC-368
                        http://jira.codehaus.org/browse/MJAVADOC-387-->
                        <additionalparam>-javafx, -Xdoclint:accessibility, -Xdoclint:html, -Xdoclint:missing, -Xdoclint:reference</additionalparam>
                        <detectLinks>true</detectLinks>
                        <links>
                            <link>http://docs.oracle.com/javaee/7/api/</link>
                            <!-- TODO: needed?-->
                            <link>http://www.softsmithy.org/lib/${dependency.softsmithy.version}/docs/site/softsmithy-lib-all/softsmithy-lib-all/apidocs/</link>
                            <link>http://docs.oracle.com/javase/8/javafx/api/</link>
                        </links>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>exec-maven-plugin</artifactId>
                    <version>${plugin.exec.version}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.felix</groupId>
                    <artifactId>maven-scr-plugin</artifactId>
                    <version>${plugin.felix-scr.version}</version>
                </plugin>
                <plugin>
                    <groupId>org.jvnet.jaxb2.maven2</groupId>
                    <artifactId>maven-jaxb2-plugin</artifactId>
                    <version>${plugin.jaxb.version}</version>
                    <configuration>
                        <args>
                            <arg>-mark-generated</arg>
                        </args>
                        <locale>${jaxb.locale}</locale>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.asciidoctor</groupId>
                    <artifactId>asciidoctor-maven-plugin</artifactId>
                    <version>${plugin.asciidoctor.version}</version>
                    <configuration>
                        <!-- Attributes common to all output formats -->
                        <attributes>
                            <endpoint-url>http://www.drombler.org</endpoint-url>
                            <sourcedir>${project.build.sourceDirectory}</sourcedir>
                            <resourcesdir>${basedir}/src/main/resources</resourcesdir>
                            <project-version>${project.version}</project-version>
                            <dromblersourcedir>${project.build.directory}/drombler-sources</dromblersourcedir>
                            <bashsourcedir>${project.build.directory}/bash-sources/tutorial</bashsourcedir>
                            <revnumber>${project.version}</revnumber>
                        </attributes>
                    </configuration>
                    <executions>
                        <execution>
                            <id>tutorial-html</id> 
                            <phase>site</phase> 
                            <goals>
                                <goal>process-asciidoc</goal> 
                            </goals>
                            <configuration>
                                <sourceDirectory>${basedir}/src/main/asciidoc/tutorial</sourceDirectory>
                                <outputDirectory>${project.build.directory}/generated-docs/docs/tutorial</outputDirectory>
                                <preserveDirectories>true</preserveDirectories>
                                <backend>html5</backend>
                                <!--<sourceHighlighter>coderay</sourceHighlighter>-->
                                <sourceHighlighter>highlightjs</sourceHighlighter>
                                <attributes>
                                    <imagesdir>./images</imagesdir>
                                    <toc>right</toc>
                                </attributes>
                            </configuration>
                        </execution>
                        <execution>
                            <id>gh-pages-html</id> 
                            <phase>site</phase> 
                            <goals>
                                <goal>process-asciidoc</goal> 
                            </goals>
                            <configuration>
                                <sourceDirectory>${basedir}/src/main/asciidoc/gh-pages</sourceDirectory>
                                <preserveDirectories>true</preserveDirectories>
                                <backend>html5</backend>
                                <!--<sourceHighlighter>coderay</sourceHighlighter>-->
                                <sourceHighlighter>highlightjs</sourceHighlighter>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>
    
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.osgi</groupId>
                <artifactId>osgi.core</artifactId>
                <version>${dependency.osgi-core.version}</version>
            </dependency>
            <dependency>
                <groupId>org.osgi</groupId>
                <artifactId>org.osgi.compendium</artifactId>
                <version>${dependency.osgi-compendium.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.felix</groupId>
                <artifactId>org.apache.felix.framework</artifactId>
                <version>${dependency.felix-framework.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.felix</groupId>
                <artifactId>org.apache.felix.scr.annotations</artifactId>
                <version>${dependency.felix-scr-annotations.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.felix</groupId>
                <artifactId>org.apache.felix.scr</artifactId>
                <version>${dependency.felix-scr.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.codehaus.mojo</groupId>
                        <artifactId>animal-sniffer-annotations</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.apache.commons</groupId>
                <artifactId>commons-lang3</artifactId>
                <version>${dependency.commons-lang3.version}</version>
            </dependency>
            <dependency>
                <groupId>org.softsmithy.lib</groupId>
                <artifactId>softsmithy-lib-core</artifactId>
                <version>${dependency.softsmithy.version}</version>
            </dependency>
            <dependency>
                <groupId>org.softsmithy.lib</groupId>
                <artifactId>softsmithy-lib-time</artifactId>
                <version>${dependency.softsmithy.version}</version>
            </dependency>
            <dependency>
                <groupId>org.softsmithy.devlib</groupId>
                <artifactId>softsmithy-devlib-core</artifactId>
                <version>${dependency.softsmithy.version}</version>
            </dependency>
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>${dependency.junit.version}</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-api</artifactId>
                <version>${dependency.slf4j.version}</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-jdk14</artifactId>
                <version>${dependency.slf4j.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.maven</groupId>
                <artifactId>maven-plugin-api</artifactId>
                <version>${dependency.maven-plugin-api.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.maven.plugin-tools</groupId>
                <artifactId>maven-plugin-annotations</artifactId>
                <version>${dependency.maven-plugin-annotations.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.maven</groupId>
                <artifactId>maven-project</artifactId>
                <version>${dependency.maven-project.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <type>maven-plugin</type>
                <version>${dependency.maven-jar-plugin.version}</version>
            </dependency>
            <dependency>
                <groupId>org.ops4j</groupId>
                <artifactId>maven-pax-plugin</artifactId>
                <version>${dependency.maven-pax-plugin.version}</version>
            </dependency>
            <dependency>
                <groupId>javax.inject</groupId>
                <artifactId>javax.inject</artifactId>
                <version>${dependency.javax-inject.version}</version>
            </dependency>
            <dependency>
                <groupId>org.ops4j.pax.cdi</groupId>
                <artifactId>pax-cdi-api</artifactId>
                <version>${dependency.pax-cdi.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.osgi</groupId>
                        <artifactId>org.osgi.core</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.ops4j.pax.cdi</groupId>
                <artifactId>pax-cdi-extender</artifactId>
                <version>${dependency.pax-cdi.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.osgi</groupId>
                        <artifactId>org.osgi.core</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.ops4j.pax.cdi</groupId>
                <artifactId>pax-cdi-extension</artifactId>
                <version>${dependency.pax-cdi.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.osgi</groupId>
                        <artifactId>org.osgi.core</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.ops4j.pax.cdi</groupId>
                <artifactId>pax-cdi-weld</artifactId>
                <version>${dependency.pax-cdi.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.jboss.weld</groupId>
                        <artifactId>weld-api</artifactId>
                    </exclusion>
                    <exclusion>      
                        <groupId>org.osgi</groupId>
                        <artifactId>org.osgi.core</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
        
            <dependency>
                <groupId>org.jboss.weld</groupId>
                <artifactId>weld-osgi-bundle</artifactId>
                <version>${dependency.weld.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.jboss.weld</groupId>
                        <artifactId>weld-core-impl</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.jboss.weld</groupId>
                        <artifactId>weld-api</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.jboss.weld</groupId>
                        <artifactId>weld-spi</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.jboss.weld</groupId>
                        <artifactId>weld-core-jsf</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>javax.inject</groupId>
                        <artifactId>javax.inject</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.jboss.classfilewriter</groupId>
                        <artifactId>jboss-classfilewriter</artifactId>
                    </exclusion>
                    <!--                <exclusion>
                        <groupId>*</groupId>
                        <artifactId>*</artifactId>
                    </exclusion>-->
                </exclusions>
            </dependency>
        
            <dependency>
                <groupId>javax.enterprise</groupId>
                <artifactId>cdi-api</artifactId>
                <version>${dependency.cdi-api.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>javax.inject</groupId>
                        <artifactId>javax.inject</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.glassfish.hk2.external</groupId>
                <artifactId>javax.inject</artifactId>
                <version>${dependency.glassfish-javax-inject.version}</version>
            </dependency>
            <!-- <dependency>
                <groupId>javax.el</groupId>
                <artifactId>javax.el-api</artifactId>
                <version>3.0.0</version>
            </dependency>
            <dependency>
                <groupId>javax.interceptor</groupId>
                <artifactId>javax.interceptor-api</artifactId>
                <version>1.2</version>
            </dependency> -->        
            <dependency>
                <groupId>com.google.guava</groupId>
                <artifactId>guava</artifactId>
                <version>${dependency.guava.version}</version>
            </dependency>
            <dependency>
                <groupId>org.jboss.logging</groupId>
                <artifactId>jboss-logging</artifactId>
                <version>${dependency.jboss-logging.version}</version>
            </dependency>
        </dependencies>
    </dependencyManagement>
    
    <reporting>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-project-info-reports-plugin</artifactId>
                <version>2.8-puce</version>
                <configuration>
                    <project-info.modules.reportCoordinates>true</project-info.modules.reportCoordinates>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-javadoc-plugin</artifactId>
                <version>${plugin.javadoc.version}</version> 
                <reportSets>
                    <reportSet>
                        <id>default</id>
                        <configuration>
                            <detectOfflineLinks>true</detectOfflineLinks>
                        </configuration>
                        <reports>
                            <report>javadoc</report>
                        </reports>
                    </reportSet>
                    <reportSet>
                        <id>aggregate</id>
                        <reports>
                            <report>aggregate</report>
                        </reports>
                        <configuration>
                            <excludePackageNames>${excludePackageNamesAggregate}</excludePackageNames>
                        </configuration>
                    </reportSet>
                </reportSets>
                <configuration>
                    <!-- Exclude Xdoclint group syntax, because the Javadoc generated by XJC is not correct.
,                   See issues:
                    https://java.net/jira/browse/JAXB-1023
                    http://jira.codehaus.org/browse/MJAVADOC-368
                    http://jira.codehaus.org/browse/MJAVADOC-387-->
                    <additionalparam>-javafx, -Xdoclint:accessibility, -Xdoclint:html, -Xdoclint:missing, -Xdoclint:reference</additionalparam>
                    <detectLinks>true</detectLinks>
                    <links>
                        <link>http://docs.oracle.com/javaee/7/api/</link>
                        <!-- TODO: needed?-->
                        <link>http://www.softsmithy.org/lib/${dependency.softsmithy.version}/docs/site/softsmithy-lib-all/softsmithy-lib-all/apidocs/</link>
                        <link>http://docs.oracle.com/javase/8/javafx/api/</link>
                    </links>
                    <skip>${reporting.javadoc.skip}</skip>
                </configuration>
            </plugin>
            <!--                            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>cobertura-maven-plugin</artifactId>
            </plugin>-->
            <!--                            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>taglist-maven-plugin</artifactId>
            </plugin>-->
        </plugins>
    </reporting>
    
</project>
