<!--
    Copyright (c) 2017 ModelSolv, Inc. and others.
    All rights reserved. This program and the accompanying materials
    are made available under the terms of the Eclipse Public License v1.0
    which accompanies this distribution, and is available at
    http://www.eclipse.org/legal/epl-v10.html
    
    Contributors:
    ModelSolv, Inc. - initial API and implementation and/or initial documentation
-->
<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.reprezen.kaizen</groupId>
    <artifactId>openapi-parser</artifactId>
    <version>0.0.2.201710151503</version>
    <name>${project.groupId}:${project.artifactId}</name>
    <description>KaiZen OpenAPI Parser by RepreZen</description>
    <url>https://github.com/RepreZen/KaiZen-OpenAPI-Editor</url>
    <licenses>
	<license>
	    <name>Eclipse Public License - Version 1.0</name>
	    <url>https://www.eclipse.org/legal/epl-v10.html</url>
	</license>
    </licenses>
    <developers>
	<developer>
	    <name>Andy Lowry</name>
	    <email>andy.lowry@reprezen.com</email>
	    <organization>RepreZen</organization>
	    <organizationUrl>https://www.reprezen.com</organizationUrl>
	</developer>
	<developer>
	    <name>Guillaume Hillairet</name>
	    <email>g.hillairet@gmail.com</email>
	    <organization>RepreZen</organization>
	    <organizationUrl>https://www.reprezen.com</organizationUrl>
	</developer>
	<developer>
	    <name>Tatiana Fesenko</name>
	    <email>tatiana.fesenko@reprezen.com</email>
	    <organization>RepreZen</organization>
	    <organizationUrl>https://www.reprezen.com</organizationUrl>
	</developer>
    </developers>    
    <scm>
	<connection>scm:git:git://github.com/RepreZen/KaiZen-OpenAPI-Parser.git</connection>
	<developerConnection>scm:git:ssh://github.com:RepreZen/KaiZen-OpenAPI-Parser.git</developerConnection>
	<url>https://github.com/RepreZen/KaiZen-OpenAPI-Parser/tree/master</url>
    </scm>
    <dependencies>
	<dependency>
	    <groupId>com.github.javaparser</groupId>
	    <artifactId>javaparser-core</artifactId>
	    <version>2.5.1</version>
	</dependency>
	<dependency>
	    <groupId>com.google.guava</groupId>
	    <artifactId>guava</artifactId>
	    <version>15.0</version>
	</dependency>
	<dependency>
	    <groupId>junit</groupId>
	    <artifactId>junit</artifactId>
	    <version>4.12</version>
	</dependency>
	<dependency>
	    <groupId>com.fasterxml.jackson.core</groupId>
	    <artifactId>jackson-databind</artifactId>
	    <version>2.8.4</version>
	</dependency>
	<dependency>
	    <groupId>commons-cli</groupId>
	    <artifactId>commons-cli</artifactId>
	    <version>1.4</version>
	</dependency>
	<dependency>
	    <groupId>com.fasterxml.jackson.dataformat</groupId>
	    <artifactId>jackson-dataformat-yaml</artifactId>
	    <version>2.8.4</version>
	</dependency>
	<dependency>
	    <groupId>commons-io</groupId>
	    <artifactId>commons-io</artifactId>
	    <version>2.5</version>
	</dependency>
	<dependency>
	    <groupId>org.apache.commons</groupId>
	    <artifactId>commons-lang3</artifactId>
	    <version>3.5</version>
	</dependency>
	<dependency>
	    <groupId>com.google.inject</groupId>
	    <artifactId>guice</artifactId>
	    <version>4.1.0</version>
	</dependency>
	<dependency>
	    <groupId>javax.mail</groupId>
	    <artifactId>javax.mail-api</artifactId>
	    <version>1.5.6</version>
	</dependency>
	<dependency>
	    <groupId>com.sun.mail</groupId>
	    <artifactId>javax.mail</artifactId>
	    <version>1.5.6</version>
	</dependency>
	<dependency>
		<groupId>org.skyscreamer</groupId>
		<artifactId>jsonassert</artifactId>
		<version>1.5.0</version>
		<scope>test</scope>
	</dependency>
    </dependencies>
    <profiles>
	<profile>
	    <id>gen</id>
	    <build>
		<plugins>
		    <plugin>
			<groupId>org.codehaus.mojo</groupId>
			<artifactId>exec-maven-plugin</artifactId>
			<version>1.6.0</version>
			<executions>
			    <execution>
				<id>codegen</id>
				<phase>generate-sources</phase>
				<goals>
				    <goal>java</goal>
				</goals>
			    </execution>
			</executions>
			<configuration>
			    <mainClass>com.reprezen.kaizen.oasparser.GenOpenApi3</mainClass>
			</configuration>
		    </plugin>
		</plugins>
	    </build>
	</profile>
	<profile>
	    <id>compile-for-gen</id>
	    <build>
		<plugins>
		    <plugin>
			<groupId>org.apache.maven.plugins</groupId>
			<artifactId>maven-compiler-plugin</artifactId>
			<configuration>
			    <includes>
				<include>**/jsonoverlay/**/*</include>
				<include>**/oasparser/GenOpenApi3.java</include>
			    </includes>
			</configuration>
		    </plugin>
		</plugins>
	    </build>
	</profile>
        <profile>
            <id>sign</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.codehaus.mojo</groupId>
                        <artifactId>exec-maven-plugin</artifactId>
                        <version>1.6.0</version>
                        <executions>
                            <execution>
                                <id>remote-sign</id>
                                <goals>
                                    <goal>exec</goal>
                                </goals>
                                <configuration>
                                    <executable>bash</executable>
                                    <arguments>
					<argument>${sign.content.script}</argument>
					<argument>--endpoint</argument>
                                        <argument>${code.sign.endpoint}</argument>
                                        <argument>--exclude</argument>
                                        <argument>*-sources.jar</argument>
                                        <argument>--exclude</argument>
                                        <argument>*-javadoc.jar</argument>
                                        <argument>${project.build.directory}</argument>
                                    </arguments>
                                </configuration>
                                <phase>package</phase>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>
    <build>
	<plugins>
	    <plugin>
		<groupId>org.apache.maven.plugins</groupId>
		<artifactId>maven-jar-plugin</artifactId>
		<configuration>
		    <archive>
			<manifestFile>src/main/resources/META-INF/MANIFEST.MF</manifestFile>
		    </archive>
		</configuration>
	    </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>
	    </plugin>
	    <plugin>
		<groupId>org.apache.maven.plugins</groupId>
		<artifactId>maven-javadoc-plugin</artifactId>
		<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.7</version>
		<extensions>true</extensions>
		<configuration>
		    <serverId>ossrh</serverId>
		    <nexusUrl>https://oss.sonatype.org/</nexusUrl>
		    <autoReleaseAfterClose>${nexus.autorelease}</autoReleaseAfterClose>
		    <autoDropAfterRelease>${nexus.autodrop}</autoDropAfterRelease>
		</configuration>
	    </plugin>
	    <plugin>
		<groupId>org.apache.maven.plugins</groupId>
		<artifactId>maven-gpg-plugin</artifactId>
		<executions>
		    <execution>
			<id>sign-artifacts</id>
			<phase>verify</phase>
			<goals>
			    <goal>sign</goal>
			</goals>
		    </execution>
		</executions>
	    </plugin>
	</plugins>
    </build>
    <properties>
	<maven.compiler.source>1.7</maven.compiler.source>
	<maven.compiler.target>1.7</maven.compiler.target>
	<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
	<nexus.autorelease>false</nexus.autorelease>
	<nexus.autodrop>true</nexus.autodrop>
    </properties>
</project>
