<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.github.thomasridd</groupId>
    <artifactId>Flatsy</artifactId>
    <version>0.0.5</version>
    <packaging>jar</packaging>
    <name>Flatsy</name>
    <description>A library for handling flat file json databases</description>
    <url>https://github.com/thomasridd/flatsy</url>

    <dependencies>

        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>com.jayway.jsonpath</groupId>
            <artifactId>json-path</artifactId>
            <version>2.0.0</version>
        </dependency>

        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.4</version>
        </dependency>

        <!-- Used for serialisation -->
        <dependency>
            <groupId>com.github.davidcarboni</groupId>
            <artifactId>restolino</artifactId>
            <version>0.1.6</version>
        </dependency>

    </dependencies>

    <!-- Required: license information: -->
    <licenses>
        <license>
            <name>The Apache Software License, Version 2.0</name>
            <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
            <distribution>repo</distribution>
            <comments>A business-friendly OSS license</comments>
        </license>
    </licenses>

    <!-- Required: source control information: -->
    <scm>
        <url>https://github.com/thomasridd/flatsy</url>
        <connection>scm:git:git://github.com/thomasridd/flatsy.git</connection>
        <developerConnection>scm:git:git@github.com:thomasridd/flatsy.git</developerConnection>
        <tag>Flatsy-0.0.5-3</tag>
    </scm>

    <distributionManagement>
        <!-- You'll probably want to test this out with a local copy of Nexus OSS. -->
        <!-- Remove these entries and uncomment the Sonatype Nexus repositories
            below when you actually want to release. -->
        <!--<snapshotRepository>-->
            <!--<id>localhost-nexus-snapshots</id>-->
            <!--<name>Local Nexus snapshot repository</name>-->
            <!--<url>http://localhost:8081/nexus/content/repositories/snapshots/</url>-->
        <!--</snapshotRepository>-->
        <!--<repository>-->
            <!--<id>localhost-nexus-staging</id>-->
            <!--<name>Local Nexus release repository</name>-->
            <!--<url>http://localhost:8081/nexus/content/repositories/releases/</url>-->
        <!--</repository>-->
         		<snapshotRepository>
         			<id>sonatype-nexus-snapshots</id>
         			<name>Sonatype Nexus snapshot repository</name>
         			<url>https://oss.sonatype.org/content/repositories/snapshots</url>
         		</snapshotRepository>
         		<repository>
         			<id>sonatype-nexus-staging</id>
         			<name>Sonatype Nexus release repository</name>
         			<url>https://oss.sonatype.org/service/local/staging/deploy/maven2</url>
         		</repository>
    </distributionManagement>

    <properties>
        <!-- Optional, but sensible -->
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>


    <build>

        <!-- Include the README, NOTICE and LICENSE files: -->
        <resources>
            <resource>
                <directory>${project.basedir}</directory>
                <includes>
                    <include>README*</include>
                    <include>NOTICE*</include>
                    <include>LICENSE*</include>
                </includes>
            </resource>
        </resources>

        <plugins>

            <!-- Optional: JVM 1.6 compliance and UTF-8 encoding: -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>

            <!-- Optional: ensure the manifest contains artifact version information: -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <version>2.4</version>
                <configuration>
                    <archive>
                        <manifest>
                            <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
                            <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
                        </manifest>
                    </archive>
                </configuration>
            </plugin>


            <!-- Required: source JAR -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-source-plugin</artifactId>
                <version>2.2.1</version>
                <executions>
                    <execution>
                        <id>attach-sources</id>
                        <phase>verify</phase>
                        <goals>
                            <goal>jar-no-fork</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

            <!-- Required: javadoc JAR -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-javadoc-plugin</artifactId>
                <version>2.9.1</version>
                <executions>
                    <execution>
                        <id>attach-javadoc</id>
                        <phase>verify</phase>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

            <!-- Release configuration: -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-release-plugin</artifactId>
                <version>2.5</version>

                <configuration>
                    <!-- Automated passphrase entry: -->

                    <!-- To pass your passphrase to the build automatically, so avoiding
                        manual interaction, you'll need to put the passphrase into settings.xml.
                        You don't really want that to be in plain text, so you'll want to follow:
                        http://maven.apache.org/guides/mini/guide-encryption.html -->
                    <!-- <arguments>-Dgpg.passphrase=${gpg.passphrase}</arguments> -->

                    <!-- Manual passphrase entry: -->

                    <!-- This is the simplest secure solution, but requires you to type
                        your key passphrase in manually when performing a release. No biggie unless
                        you want your CI server to decide when to release for you. -->
                    <mavenExecutorId>forked-path</mavenExecutorId>

                </configuration>
            </plugin>

            <!-- Deployment -->
            <plugin>
                <groupId>org.sonatype.plugins</groupId>
                <artifactId>nexus-staging-maven-plugin</artifactId>
                <version>1.6.4</version>
                <extensions>true</extensions>
                <configuration>
                    <serverId>ossrh</serverId>
                    <nexusUrl>https://oss.sonatype.org/</nexusUrl>
                    <autoReleaseAfterClose>true</autoReleaseAfterClose>
                </configuration>
            </plugin>

        </plugins>
    </build>

    <profiles>

        <!-- GPG Signature on release -->
        <profile>
            <id>release-sign-artifacts</id>
            <activation>
                <property>
                    <name>performRelease</name>
                    <value>true</value>
                </property>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-gpg-plugin</artifactId>
                        <version>1.4</version>
                        <executions>
                            <execution>
                                <id>sign-artifacts</id>
                                <phase>verify</phase>
                                <goals>
                                    <goal>sign</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>

    </profiles>

    <!-- Required: developer information: -->
    <developers>
        <developer>
            <id>tom</id>
            <name>Thomas Ridd</name>
            <email>twridd@gmail.com</email>
            <organization>Ridd</organization>
            <organizationUrl>https://github.com/thomasridd</organizationUrl>
            <url>https://github.com/thomasridd</url>
        </developer>
    </developers>

</project>