<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<parent>
		<groupId>de.adorsys.opba</groupId>
		<artifactId>open-banking-gateway</artifactId>
		<version>0.0.3</version>
	</parent>

	<artifactId>opba-banking-rest-api</artifactId>
	<name>opba-banking-rest-api</name>

	<properties>
		<ruleset.basedir>..</ruleset.basedir>
		<openapi-spec-file-location>${project.basedir}/src/main/resources/static/banking_api_ais.yml</openapi-spec-file-location>
	</properties>

	<dependencies>
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-lang3</artifactId>
		</dependency>
		<dependency>
			<groupId>org.projectlombok</groupId>
			<artifactId>lombok</artifactId>
		</dependency>

		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-webmvc</artifactId>
		</dependency>
		<dependency>
			<groupId>io.swagger</groupId>
			<artifactId>swagger-annotations</artifactId>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-databind</artifactId>
		</dependency>
		<dependency>
			<groupId>javax.validation</groupId>
			<artifactId>validation-api</artifactId>
		</dependency>
		<dependency>
			<groupId>javax.annotation</groupId>
			<artifactId>javax.annotation-api</artifactId>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-api</artifactId>
		</dependency>
		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>javax.servlet-api</artifactId>
		</dependency>
		<dependency>
			<groupId>io.springfox</groupId>
			<artifactId>springfox-swagger2</artifactId>
		</dependency>

		<dependency>
			<groupId>io.springfox</groupId>
			<artifactId>springfox-swagger-ui</artifactId>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>io.swagger.codegen.v3</groupId>
				<artifactId>swagger-codegen-maven-plugin</artifactId>
				<version>3.0.11</version>
				<executions>
					<execution>
						<goals>
							<goal>generate</goal>
						</goals>
						<configuration>
							<inputSpec>${openapi-spec-file-location}</inputSpec>
							<language>spring</language>
							<output>${project.basedir}/generated/</output>
							<configOptions>
								<sourceFolder>src/main</sourceFolder>
								<basePackage>de.adorsys.opba.bankingapi.ais</basePackage>
								<configPackage>de.adorsys.opba.bankingapi.config</configPackage>
								<modelPackage>de.adorsys.opba.bankingapi.ais.model</modelPackage>
								<apiPackage>de.adorsys.opba.bankingapi.ais.resource</apiPackage>
								<interfaceOnly>true</interfaceOnly>
								<skipOverwrite>true</skipOverwrite>
								<dateLibrary>java8</dateLibrary>
								<java8>true</java8>
								<implicitHeaders>false</implicitHeaders>
								<delegatePattern>true</delegatePattern>
								<useTags>true</useTags>
								<library>spring-mvc</library>
								<swaggerDocketConfig>false</swaggerDocketConfig>
							</configOptions>
							<generateApiTests>false</generateApiTests>
							<generateModelTests>false</generateModelTests>
						</configuration>
					</execution>
				</executions>
				<dependencies>
					<dependency>
						<groupId>io.swagger.codegen.v3</groupId>
						<artifactId>swagger-codegen-generators</artifactId>
						<version>1.0.11</version>
					</dependency>
				</dependencies>
			</plugin>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>build-helper-maven-plugin</artifactId>
				<version>3.0.0</version>
				<executions>
					<execution>
						<id>add-generated-source</id>
						<phase>initialize</phase>
						<goals>
							<goal>add-source</goal>
						</goals>
						<configuration>
							<sources>
								<source>${project.basedir}/generated/src/main</source>
							</sources>
						</configuration>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>

</project>
