<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>com.github.GBSEcom</groupId>
    <artifactId>first-data-gateway</artifactId>
    <packaging>jar</packaging>
    <name>FirstApiClient</name>
    <url>https://docs.firstdata.com/org/gateway</url>
    <description>IPG API v21.5.0. Java SDK to be used with a First Data Gateway account. This SDK has been created and packaged to offer the easiest way to integrate your application into the First Data Gateway. This SDK gives you the ability to run transactions such as sales, preauthorizations, postauthorizations, credits, voids, and returns; transaction inquiries; setting up scheduled payments and much more.</description>
    <scm>
        <connection>scm:git:git@github.com:openapitools/openapi-generator.git</connection>
        <developerConnection>scm:git:git@github.com:openapitools/openapi-generator.git</developerConnection>
        <url>https://github.com/openapitools/openapi-generator</url>
    </scm>

    <licenses>
        <license>
            <name>MIT</name>
            <url>https://opensource.org/licenses/mit-license.php</url>
            <distribution>repo</distribution>
        </license>
    </licenses>

	<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>

    <developers>
        <developer>
            <name>Brandon Garcia</name>
            <email>brandon.garcia@firstdata.com</email>
            <organization>First Data Corporation</organization>
            <organizationUrl>https://www.firstdata.com</organizationUrl>
        </developer>
        <developer>
            <name>Pradyoth Rao</name>
            <email>pradyoth.rao@firstdata.com</email>
            <organization>First Data Corporation</organization>
            <organizationUrl>https://www.firstdata.com</organizationUrl>
        </developer>
        <developer>
            <name>Eric Margules</name>
            <email>eric.margules@fiserv.com</email>
            <organization>Fiserv</organization>
            <organizationUrl>https://www.firstdata.com</organizationUrl>
        </developer>
    </developers>

    <build>
    	<pluginManagement>
		    <plugins>
		        <plugin>
		            <groupId>org.apache.maven.plugins</groupId>
		            <artifactId>maven-enforcer-plugin</artifactId>
		            <version>3.0.0-M1</version>
		            <executions>
		                <execution>
		                    <id>enforce-maven</id>
		                    <goals>
		                        <goal>enforce</goal>
		                    </goals>
		                    <configuration>
		                        <rules>
		                            <requireMavenVersion>
		                                <version>2.2.0</version>
		                            </requireMavenVersion>
		                        </rules>
		                    </configuration>
		                </execution>
		            </executions>
		        </plugin>
		        <plugin>
		            <groupId>org.apache.maven.plugins</groupId>
		            <artifactId>maven-surefire-plugin</artifactId>
		            <version>2.12</version>
		            <configuration>
		                <systemProperties>
		                    <property>
		                        <name>loggerPath</name>
		                        <value>conf/log4j.properties</value>
		                    </property>
		                </systemProperties>
		                <argLine>-Xms512m -Xmx1500m</argLine>
		                <parallel>methods</parallel>
		                <forkMode>pertest</forkMode>
		            </configuration>
		        </plugin>
		        <plugin>
		            <artifactId>maven-dependency-plugin</artifactId>
		            <executions>
		                <execution>
		                    <phase>package</phase>
		                    <goals>
		                        <goal>copy-dependencies</goal>
		                    </goals>
		                    <configuration>
		                        <outputDirectory>${project.build.directory}/lib</outputDirectory>
		                    </configuration>
		                </execution>
		            </executions>
		        </plugin>
		
		        <!-- attach test jar -->
		         <plugin>
		             <groupId>org.apache.maven.plugins</groupId>
		             <artifactId>maven-jar-plugin</artifactId>
		             <version>2.2</version>
		             <executions>
		                 <execution>
		                     <goals>
		                         <goal>jar</goal>
		                         <goal>test-jar</goal>
		                     </goals>
		                 </execution>
		             </executions>
		             <configuration>
		             </configuration>
		         </plugin>
		
		         <plugin>
		             <groupId>org.codehaus.mojo</groupId>
		             <artifactId>build-helper-maven-plugin</artifactId>
		             <version>1.10</version>
		             <executions>
		                 <execution>
		                     <id>add_sources</id>
		                     <phase>generate-sources</phase>
		                     <goals>
		                         <goal>add-source</goal>
		                     </goals>
		                     <configuration>
		                         <sources>
		                             <source>
		                             src/main/java</source>
		                         </sources>
		                     </configuration>
		                 </execution>
		                 <execution>
		                     <id>add_test_sources</id>
		                     <phase>generate-test-sources</phase>
		                     <goals>
		                         <goal>add-test-source</goal>
		                     </goals>
		                     <configuration>
		                         <sources>
		                             <source>
		                             src/test/java</source>
		                         </sources>
		                     </configuration>
		                 </execution>
		             </executions>
		         </plugin>
		         <plugin>
		             <groupId>org.apache.maven.plugins</groupId>
		             <artifactId>maven-javadoc-plugin</artifactId>
		             <version>2.10.4</version>
		             <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>
		             <version>2.2.1</version>
		             <executions>
		                 <execution>
		                     <id>attach-sources</id>
		                     <goals>
		                         <goal>jar-no-fork</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>true</autoReleaseAfterClose>
				  </configuration>
				</plugin>
	            	<plugin>
	            		<groupId>org.apache.maven.plugins</groupId>
	            		<artifactId>maven-shade-plugin</artifactId>
	            		<version>2.3</version>
	            	</plugin>
	        </plugins>
		</pluginManagement>
		<plugins>
		    <plugin>
		      <groupId>org.apache.maven.plugins</groupId>
		      <artifactId>maven-source-plugin</artifactId>
		      <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>
		      <executions>
		        <execution>
		          <id>attach-javadocs</id>
		          <goals>
		            <goal>jar</goal>
		          </goals>
		        </execution>
		      </executions>
		    </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>

    <profiles>
        <profile>
            <id>sign-artifacts</id>
            <build>
                <plugins>
                    <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>
                    <plugin>
	                    <groupId>org.apache.maven.plugins</groupId>
	                    <artifactId>maven-enforcer-plugin</artifactId>
	                    <version>3.0.0-M1</version>
	                    <executions>
	                        <execution>
	                            <id>enforce-maven</id>
	                            <goals>
	                                <goal>enforce</goal>
	                            </goals>
	                            <configuration>
	                                <rules>
	                                    <requireMavenVersion>
	                                        <version>2.2.0</version>
	                                    </requireMavenVersion>
	                                </rules>
	                            </configuration>
	                        </execution>
	                    </executions>
	                </plugin>
	                <plugin>
	                    <groupId>org.apache.maven.plugins</groupId>
	                    <artifactId>maven-surefire-plugin</artifactId>
	                    <version>2.12</version>
	                    <configuration>
	                        <systemProperties>
	                            <property>
	                                <name>loggerPath</name>
	                                <value>conf/log4j.properties</value>
	                            </property>
	                        </systemProperties>
	                        <argLine>-Xms512m -Xmx1500m</argLine>
	                        <parallel>methods</parallel>
	                        <forkMode>pertest</forkMode>
	                    </configuration>
	                </plugin>
	                <plugin>
	                    <artifactId>maven-dependency-plugin</artifactId>
	                    <executions>
	                        <execution>
	                            <phase>package</phase>
	                            <goals>
	                                <goal>copy-dependencies</goal>
	                            </goals>
	                            <configuration>
	                                <outputDirectory>${project.build.directory}/lib</outputDirectory>
	                            </configuration>
	                        </execution>
	                    </executions>
	                </plugin>
    
	                <!-- attach test jar -->
	                <plugin>
	                    <groupId>org.apache.maven.plugins</groupId>
	                    <artifactId>maven-jar-plugin</artifactId>
	                    <version>2.2</version>
	                    <executions>
	                        <execution>
	                            <goals>
	                                <goal>jar</goal>
	                                <goal>test-jar</goal>
	                            </goals>
	                        </execution>
	                    </executions>
	                    <configuration>
	                    </configuration>
	                </plugin>
	    
	                <plugin>
	                    <groupId>org.codehaus.mojo</groupId>
	                    <artifactId>build-helper-maven-plugin</artifactId>
	                    <version>1.10</version>
	                    <executions>
	                        <execution>
	                            <id>add_sources</id>
	                            <phase>generate-sources</phase>
	                            <goals>
	                                <goal>add-source</goal>
	                            </goals>
	                            <configuration>
	                                <sources>
	                                    <source>
	                                    src/main/java</source>
	                                </sources>
	                            </configuration>
	                        </execution>
	                        <execution>
	                            <id>add_test_sources</id>
	                            <phase>generate-test-sources</phase>
	                            <goals>
	                                <goal>add-test-source</goal>
	                            </goals>
	                            <configuration>
	                                <sources>
	                                    <source>
	                                    src/test/java</source>
	                                </sources>
	                            </configuration>
	                        </execution>
	                    </executions>
	                </plugin>
	                <plugin>
	                    <groupId>org.apache.maven.plugins</groupId>
	                    <artifactId>maven-javadoc-plugin</artifactId>
	                    <version>2.10.4</version>
	                    <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>
	                    <version>2.2.1</version>
	                    <executions>
	                        <execution>
	                            <id>attach-sources</id>
	                            <goals>
	                                <goal>jar-no-fork</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>true</autoReleaseAfterClose>
				      </configuration>
				    </plugin>
		            	<plugin>
		            		<groupId>org.apache.maven.plugins</groupId>
		            		<artifactId>maven-shade-plugin</artifactId>
		            		<version>2.3</version>
		            	</plugin>
                </plugins>
            </build>
        </profile>
    </profiles>

    <dependencies>
        <dependency>
            <groupId>io.swagger</groupId>
            <artifactId>swagger-annotations</artifactId>
            <version>${swagger-core-version}</version>
        </dependency>
        <!-- @Nullable annotation -->
        <dependency>
            <groupId>com.google.code.findbugs</groupId>
            <artifactId>jsr305</artifactId>
            <version>3.0.2</version>
        </dependency>
        <dependency>
            <groupId>com.squareup.okhttp3</groupId>
            <artifactId>okhttp</artifactId>
            <version>${okhttp-version}</version>
        </dependency>
        <dependency>
            <groupId>com.squareup.okhttp3</groupId>
            <artifactId>logging-interceptor</artifactId>
            <version>${okhttp-version}</version>
        </dependency>
        <dependency>
            <groupId>com.google.code.gson</groupId>
            <artifactId>gson</artifactId>
            <version>${gson-version}</version>
        </dependency>
        <dependency>
            <groupId>io.gsonfire</groupId>
            <artifactId>gson-fire</artifactId>
            <version>${gson-fire-version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>${commons-lang3-version}</version>
        </dependency>
        <dependency>
            <groupId>javax.annotation</groupId>
            <artifactId>jsr250-api</artifactId>
            <version>${javax-annotation-version}</version>
        </dependency>
        <!-- test dependencies -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>${junit-version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.6</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
            <version>1.11</version>
        </dependency>
    </dependencies>
    <properties>
        <java.version>1.8</java.version>
        <maven.compiler.source>${java.version}</maven.compiler.source>
        <maven.compiler.target>${java.version}</maven.compiler.target>
        <gson-fire-version>1.8.3</gson-fire-version>
        <swagger-core-version>1.5.22</swagger-core-version>
        <okhttp-version>3.14.2</okhttp-version>
        <gson-version>2.8.5</gson-version>
        <commons-lang3-version>3.9</commons-lang3-version>
        <maven-plugin-version>1.0.0</maven-plugin-version>
        <javax-annotation-version>1.0</javax-annotation-version>
        <junit-version>4.13.1</junit-version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
    <version>1.15.0</version>
    <organization>
    	<name>First Data</name>
    	<url>https://www.firstdata.com</url>
    </organization>
</project>
