<project 
    xmlns="http://maven.apache.org/POM/4.0.0" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    
    <modelVersion>4.0.0</modelVersion>
    
    <groupId>com.danhaywood.mavenmixin</groupId>
    <artifactId>isisvalidate</artifactId>
    <version>0.0.2</version>

    <packaging>pom</packaging>
    
    <name>${project.groupId}:${project.artifactId}</name>
    <description>
        Maven mixin providing the ability to run isis:validate goal over Apache Isis domain objects.
    </description>
    
    <url>https://github.com/danhaywood/java-mavenmixin-isisvalidate</url>
    <licenses>
        <license>
            <name>The Apache Software License, Version 2.0</name>
            <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
            <distribution>repo</distribution>
        </license>
    </licenses>
    <scm>
        <connection>scm:git:git@github.com:danhaywood/java-mavenmixin-isisvalidate.git</connection>
        <developerConnection>scm:git:git@github.com:danhaywood/java-mavenmixin-isisvalidate.git</developerConnection>
        <url>git@github.com:danhaywood/java-mavenmixin-isisvalidate.git</url>
    </scm>
    <developers>
        <developer>
            <id>danhaywood</id>
            <name>Dan Haywood</name>
            <email>dan@haywood-associates.co.uk</email>
        </developer>
    </developers>    

    <properties>
        <isis-maven-plugin.version>1.13.1</isis-maven-plugin.version>

        <isis-maven-plugin.validate.appManifest>domainapp.modules.simple.SimpleModuleManifest</isis-maven-plugin.validate.appManifest>
    </properties>
        
    <profiles>
        <profile>
            <id>mavenmixin-isisvalidate</id>
            <activation>
                <property>
                    <name>!skip.mavenmixin-isisvalidate</name>
                </property>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.isis.tool</groupId>
                        <artifactId>isis-maven-plugin</artifactId>
                        <version>${isis-maven-plugin.version}</version>
                        <configuration>
                            <appManifest>${isis-maven-plugin.validate.appManifest}</appManifest>
                        </configuration>
                        <dependencies>
                            <dependency>
                                <groupId>${project.groupId}</groupId>
                                <artifactId>${project.artifactId}</artifactId>
                                <version>${project.version}</version>
                            </dependency>
                            <!--
                            ... workaround to avoid conflict with plexus-default
                                (not sure why exclusions in the isis-maven-plugin aren't sufficient, though ...
                            -->
                            <dependency>
                                <groupId>com.google.guava</groupId>
                                <artifactId>guava</artifactId>
                                <version>19.0</version>
                            </dependency>
                            <dependency>
                                <groupId>org.hsqldb</groupId>
                                <artifactId>hsqldb</artifactId>
                                <version>2.3.1</version>
                            </dependency>
                        </dependencies>
                        <executions>
                            <execution>
                                <phase>test</phase>
                                <goals>
                                    <goal>validate</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>danhaywood-mavenmixin-sonatyperelease</id>
            <!-- 
            this profile is not part of the mixin, but is required to be defined as a profile
            in order to release this mixin pom.xml to Maven Central repo
            -->
            <build>
                <plugins>
                    <!-- http://central.sonatype.org/pages/apache-maven.html -->
                    <plugin>
                        <groupId>org.sonatype.plugins</groupId>
                        <artifactId>nexus-staging-maven-plugin</artifactId>
                        <version>1.6.2</version>
                        <extensions>true</extensions>
                        <configuration>
                            <serverId>ossrh</serverId>
                            <nexusUrl>https://oss.sonatype.org/</nexusUrl>
                            <autoReleaseAfterClose>true</autoReleaseAfterClose>
                        </configuration>
                    </plugin>
                    <!-- http://kohsuke.org/pgp-maven-plugin/secretkey.html instead of maven-gpg-plugin -->
                    <plugin>
                        <groupId>org.kohsuke</groupId>
                        <artifactId>pgp-maven-plugin</artifactId>
                        <version>1.1</version>
                        <executions>
                            <execution>
                                <id>sign-artifacts</id>
                                <phase>verify</phase>
                                <goals>
                                    <goal>sign</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
            <distributionManagement>
                <snapshotRepository>
                    <id>ossrh</id>
                    <url>https://oss.sonatype.org/content/repositories/snapshots</url>
                </snapshotRepository>
            </distributionManagement>
        </profile>
    </profiles>


    
</project>
