<?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/maven-v4_0_0.xsd">

    <modelVersion>4.0.0</modelVersion>
    <groupId>org.dynamide</groupId>
    <artifactId>RestReplay</artifactId>
    <version>1.0.6</version>
    <name>RestReplay</name>
    <packaging>jar</packaging>
    <description>RestReplay is a dynamide.org utility to send REST requests to the services layer 
    (including JSON, XML, and multipart XML requests), 
    read responses, validate responses, 
    and compare the resulting payloads with templates.</description>
    <url>http://dynamide.org/RestReplay/doc/index.html</url>
    
    <licenses>
      <license>
        <name>The Apache License, Version 2.0</name>
        <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
      </license>
    </licenses>
    
    <developers>
      <developer>
        <name>Laramie Crocker</name>
        <email>order3@dynamide.org</email>
        <organization>dynamide.org</organization>
        <organizationUrl>http://dynamide.org</organizationUrl>
      </developer>
    </developers>
    
    <scm>
      <connection>scm:git:git@github.com:dynamide/RestReplay.git</connection>
      <developerConnection>scm:git:git@github.com:dynamide/RestReplay.git</developerConnection>
      <url>git@github.com:dynamide/RestReplay.git</url>
    </scm>
    
    <repositories>
        <repository>
            <id>repo1</id>
            <name>Maven repo1</name>
            <url>http://repo1.maven.org/maven2</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>

        <repository>
            <id>repo2</id>
            <name>Maven repo2</name>
            <url>http://repo2.maven.org/maven2</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
        <repository>
            <id>maven2-repository.dev.java.net</id>
            <name>Java.net Maven 2 Repository</name>
            <url>http://download.java.net/maven/2</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
        <repository>
            <id>codehaus repo</id>
            <name>codehaus repo</name>
            <url>http://repository.codehaus.org</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
        <repository>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
            <releases>
                <enabled>true</enabled>
            </releases>
            <id>Apache</id>
            <name>External release repository of the Apache projects</name>
            <url>https://repository.apache.org/content/groups/public/</url>
        </repository>


        <repository>
            <id>apache.snapshots</id>
            <name>Apache Snapshot Repository</name>
            <url>
                http://people.apache.org/repo/m2-snapshot-repository
            </url>
            <releases>
                <enabled>false</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>

    </repositories>


    <pluginRepositories>
        <pluginRepository>
            <id>repo1</id>
            <name>Maven repo1</name>
            <url>http://repo1.maven.org/maven2</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </pluginRepository>
        <pluginRepository>
            <id>maven repo</id>
            <name>maven repo</name>
            <url>http://repo2.maven.org/maven2</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </pluginRepository>
        <pluginRepository>
            <id>maven2-repository.dev.java.net</id>
            <url>http://download.java.net/maven/2</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </pluginRepository>
        <pluginRepository>
            <id>Codehaus Repository</id>
            <url>http://repository.codehaus.org/</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </pluginRepository>
    </pluginRepositories>



    <dependencies>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.7.7</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>RELEASE</version>
        </dependency>
        <dependency>
            <groupId>commons-cli</groupId>
            <artifactId>commons-cli</artifactId>
            <version>RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.testng</groupId>
            <artifactId>testng</artifactId>
            <scope>compile</scope>
            <version>RELEASE</version>
        </dependency>
        <dependency>
            <groupId>commons-httpclient</groupId>
            <artifactId>commons-httpclient</artifactId>
            <!--version>3.1</version-->
            <version>RELEASE</version>
        </dependency>
        <dependency>
            <groupId>dom4j</groupId>
            <artifactId>dom4j</artifactId>
            <version>1.6.1</version>
        </dependency>
        <dependency>
            <groupId>jaxen</groupId>
            <artifactId>jaxen</artifactId>
            <version>1.1.6</version>
        </dependency>
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-jexl</artifactId>
            <version>RELEASE</version>
            <!--version>2.1.1</version-->
        </dependency>
        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <!--version>1.3.2</version-->
            <version>RELEASE</version>
        </dependency>
        <dependency>
            <groupId>jdom</groupId>
            <artifactId>jdom</artifactId>
            <version>1.0</version>
        </dependency>
        <dependency>
            <groupId>org.json</groupId>
            <artifactId>json</artifactId>
            <version>20140107</version>
        </dependency>
        <dependency>
            <groupId>com.jayway.jsonpath</groupId>
            <artifactId>json-path</artifactId>
            <version>1.2.0</version>
        </dependency>
        <dependency>
            <groupId>com.google.code.gson</groupId>
            <artifactId>gson</artifactId>
            <version>2.3.1</version>
        </dependency>
    </dependencies>
    
    <distributionManagement>
      <snapshotRepository>
        <id>ossrh</id>
        <url>https://oss.sonatype.org/content/repositories/snapshots</url>
      </snapshotRepository>
      <repository>
        <id>ossrh</id>
        <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
      </repository>
    </distributionManagement>

    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.2</version>
                    <configuration>
                        <!-- put your configurations here -->
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>

        <finalName>RestReplay</finalName>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
            </resource>
        </resources>
        <plugins>
            <plugin>
                <!-- The way this works, is you call:
                     cd RestReplay/
                        mvn exec:java
                     or, with an override:
                        mvn exec:java -Dtestdir=/my/override/directory
                     or overriding any other command line parameters:
                        mvn -DskipTests=true exec:java -Dtest=testfoo -DtestGroup=bar -Dtestdir=mojo -DautoDeletePOSTS=true
                -->
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>exec-maven-plugin</artifactId>
                <version>1.3.2</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>java</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <mainClass>org.dynamide.restreplay.Main</mainClass>
                    <arguments>
                        <argument>-testdir</argument>
                        <argument>${basedir}/src/main/resources/restreplay</argument>
                        <argument>-master</argument>
                        <argument>master.xml</argument>
                        <argument>-reports</argument>
                        <argument>${basedir}/reports</argument>
                    </arguments>
                    <systemProperties>
                    </systemProperties>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-dependency-plugin</artifactId>
                <executions>
                    <execution>
                        <id>copy-dependencies</id>
                        <phase>prepare-package</phase>
                        <goals>
                            <goal>copy-dependencies</goal>
                        </goals>
                        <configuration>
                            <outputDirectory>${project.build.directory}/lib</outputDirectory>
                            <overWriteReleases>false</overWriteReleases>
                            <overWriteSnapshots>false</overWriteSnapshots>
                            <overWriteIfNewer>true</overWriteIfNewer>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <version>2.4</version>
                <configuration>
                    <archive>
                        <manifest>
                            <addClasspath>true</addClasspath>
                            <classpathPrefix>lib/</classpathPrefix>
                            <mainClass>org.dynamide.restreplay.Main</mainClass>
                        </manifest>
                    </archive>
                </configuration>
            </plugin>

            <!-- to get this to work, just run
                  mvn package
            -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-shade-plugin</artifactId>
                <version>2.3</version>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>shade</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <finalName>${project.artifactId}-${project.version}</finalName>
                </configuration>
            </plugin>

            <!-- http://maven.apache.org/plugins/maven-javadoc-plugin/usage.html
                 sez:
                    mvn javadoc:javadoc
                    mvn javadoc:jar
                    mvn javadoc:aggregate
                    mvn javadoc:aggregate-jar
                    mvn javadoc:test-javadoc
                    mvn javadoc:test-jar
                    mvn javadoc:test-aggregate
                    mvn javadoc:test-aggregate-jar
            -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-javadoc-plugin</artifactId>
                <version>2.10.1</version>
                <configuration>
                    <outputDirectory>${project.build.directory}/javadoc</outputDirectory>
                     <finalName>${project.artifactId}-${project.version}</finalName>
                </configuration>
                <executions>
                    <execution>
                        <id>attach-javadocs</id>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                        </execution>
                </executions>
            </plugin>
            
            <plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-source-plugin</artifactId>
				<executions>
					<execution>
						<id>attach-sources</id>
						<goals>
							<goal>jar</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
                  <finalName>${project.artifactId}-${project.version}</finalName>
                </configuration>
			</plugin>
			
			<plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-gpg-plugin</artifactId>
                <version>1.6</version>
                <executions>
                  <execution>
                    <id>sign-artifacts</id>
                    <phase>verify</phase>
                    <goals>
                      <goal>sign</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>
                 <nexusUrl>https://oss.sonatype.org/</nexusUrl>
                 <autoReleaseAfterClose>false</autoReleaseAfterClose>
              </configuration>
            </plugin>
            
        </plugins>
    </build>

    <!-- http://maven.apache.org/plugins/maven-javadoc-plugin/usage.html
         sez: that reporting allows you to generate javadoc by running "mvn site".
         I have found it to place the javadocs here:
           /Users/vcrocla/src/RestReplay/target/site/apidocs/
           /Users/vcrocla/src/RestReplay/target/site/testapidocs/
    -->
    <reporting>
        <plugins>
            <!--  http://maven.apache.org/plugins/maven-project-info-reports-plugin/license-mojo.html
            sez:
               run this:
                    mvn project-info-reports:license
               and get this:
                   file:///Users/vcrocla/src/RestReplay/target/site/dependencies.html
               License dependencies, and code dependencies, in a nice report.
            -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-project-info-reports-plugin</artifactId>
                <version>2.8</version>
                <reportSets>
                    <reportSet>
                        <reports>
                            <report>license</report>
                            <report>dependencies</report>
                        </reports>
                    </reportSet>
                </reportSets>
            </plugin>
        </plugins>
    </reporting>

</project>

