<?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.intel.jndn.management</groupId>
  <artifactId>jndn-management</artifactId>
  <version>1.0.0</version>
  <name>jndn-management</name>
  <description>Tools for managing an NDN forwarding daemon</description>
  <url>https://github.com/01org/jndn-management</url>
  <packaging>jar</packaging>
  <licenses>
    <license>
      <name>LGPL v3</name>
      <url>https://www.gnu.org/licenses/lgpl.html</url>
    </license>
  </licenses>
  <developers>
    <developer>
      <name>Andrew Brown</name>
      <url>http://github.com/andrewsbrown</url>
    </developer>
  </developers>
  <scm>
    <url>https://github.com/01org/jndn-management</url>
    <connection>scm:git:git@github.com:01org/jndn-management.git</connection>
    <developerConnection>scm:git:git@github.com:01org/jndn-management.git</developerConnection>
  </scm>
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
  </properties>
  <dependencies>
    <dependency>
      <groupId>net.named-data</groupId>
      <artifactId>jndn</artifactId>
      <version>0.7</version>
    </dependency>
    <dependency>
      <groupId>com.intel.jndn.utils</groupId>
      <artifactId>jndn-utils</artifactId>
      <version>1.0.0</version>
    </dependency>
    <!-- test dependencies -->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.10</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>com.intel.jndn.mock</groupId>
      <artifactId>jndn-mock</artifactId>
      <version>0.10.2</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
  <profiles>
    <profile>
      <id>ossrh</id>
      <build>
        <plugins>
          <!-- OSSRH-directed plugins (see http://central.sonatype.org/pages/apache-maven.html) -->
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-source-plugin</artifactId>
            <version>2.4</version>
            <executions>
              <execution>
                <id>attach-sources</id>
                <goals>
                  <goal>jar-no-fork</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-javadoc-plugin</artifactId>
            <version>2.10.1</version>
            <executions>
              <execution>
                <id>attach-javadocs</id>
                <goals>
                  <goal>jar</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <groupId>org.sonatype.plugins</groupId>
            <artifactId>nexus-staging-maven-plugin</artifactId>
            <version>1.6.3</version>
            <extensions>true</extensions>
            <configuration>
              <serverId>ossrh</serverId>
              <stagingProfileId>a80137db01223a</stagingProfileId>
              <nexusUrl>https://oss.sonatype.org/</nexusUrl>
              <autoReleaseAfterClose>true</autoReleaseAfterClose>
            </configuration>
          </plugin>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-gpg-plugin</artifactId>
            <version>1.5</version>
            <executions>
              <execution>
                <id>sign-artifacts</id>
                <phase>verify</phase>
                <goals>
                  <goal>sign</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    
    <!-- run `mvn clean javadoc:javadoc scm-publish:publish-scm -P docs` to push
    Javadoc to Github -->
    <profile>
      <id>docs</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-javadoc-plugin</artifactId>
            <version>2.10.2</version>
          </plugin>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-scm-publish-plugin</artifactId>
            <version>1.1</version>
            <configuration>
              <checkoutDirectory>${project.build.directory}/scmpublish</checkoutDirectory>
              <checkinComment>Publishing javadoc for ${project.artifactId}:${project.version}</checkinComment>
              <content>${project.build.directory}/site/apidocs</content>
              <skipDeletedFiles>true</skipDeletedFiles>
              <pubScmUrl>scm:git:https://github.com/01org/jndn-management.git</pubScmUrl>
              <scmBranch>gh-pages</scmBranch>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>
</project>