<?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">
    <parent>
        <artifactId>qase-java</artifactId>
        <groupId>io.qase</groupId>
        <version>3.0.4</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>qase-api</artifactId>

    <name>Qase TMS Java API Client</name>
    <description>Qase TMS APIs Client Library for Java</description>
    <properties>
        <javax.ws.rs-api-version>2.1.1</javax.ws.rs-api-version>
        <jsr311-api-version>1.1.1</jsr311-api-version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.openapitools</groupId>
            <artifactId>jackson-databind-nullable</artifactId>
            <version>0.2.4</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>com.google.code.findbugs</groupId>
            <artifactId>jsr305</artifactId>
            <version>3.0.2</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>javax.annotation</groupId>
            <artifactId>javax.annotation-api</artifactId>
            <version>1.3.2</version>
            <scope>compile</scope>
        </dependency>
        <dependency>
            <groupId>io.swagger</groupId>
            <artifactId>swagger-annotations</artifactId>
            <version>1.6.8</version>
        </dependency>
        <dependency>
            <groupId>io.gsonfire</groupId>
            <artifactId>gson-fire</artifactId>
            <version>1.8.5</version>
        </dependency>
        <dependency>
            <groupId>com.squareup.okhttp3</groupId>
            <artifactId>logging-interceptor</artifactId>
            <version>4.10.0</version>
        </dependency>
        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjrt</artifactId>
            <version>1.8.9</version>
        </dependency>
        <dependency>
            <groupId>org.aeonbits.owner</groupId>
            <artifactId>owner-java8</artifactId>
            <version>1.0.12</version>
        </dependency>
        <dependency>
            <groupId>com.konghq</groupId>
            <artifactId>unirest-java</artifactId>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.github.tomakehurst</groupId>
            <artifactId>wiremock-jre8</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter-engine</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter-params</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>com.google.inject</groupId>
            <artifactId>guice</artifactId>
        </dependency>
        <dependency>
            <groupId>org.mockito</groupId>
            <artifactId>mockito-core</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>javax.ws.rs</groupId>
            <artifactId>jsr311-api</artifactId>
            <version>${jsr311-api-version}</version>
        </dependency>
        <dependency>
            <groupId>javax.ws.rs</groupId>
            <artifactId>javax.ws.rs-api</artifactId>
            <version>${javax.ws.rs-api-version}</version>
        </dependency>
    </dependencies>
    <profiles>
        <profile>
            <id>codegen</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.openapitools</groupId>
                        <artifactId>openapi-generator-maven-plugin</artifactId>
                        <version>6.2.1</version>
                        <executions>
                            <execution>
                                <goals>
                                    <goal>generate</goal>
                                </goals>
                                <configuration>
                                    <inputSpec>https://github.com/qase-tms/specs/raw/master/api.yaml</inputSpec>
                                    <generatorName>java</generatorName>
                                    <modelPackage>io.qase.client.model</modelPackage>
                                    <apiPackage>io.qase.client.api</apiPackage>
                                    <library>okhttp-gson</library>
                                    <httpUserAgent>Qase API Client</httpUserAgent>
                                    <generateModelTests>false</generateModelTests>
                                    <generateApiTests>false</generateApiTests>
                                    <templateDirectory>${project.basedir}/src/main/resources/templates
                                    </templateDirectory>
                                    <typeMappings>
                                        <typeMapping>LocalDateTime=String</typeMapping>
                                        <typeMapping>OneOfTestCaseDefectRunResultPlanRequirement=Object</typeMapping>
                                        <typeMapping>OneOfRunResultRequirementqqlTestCaseqqlDefectqqlPlan=Object
                                        </typeMapping>
                                        <typeMapping>AnyOfarrayobject=Object[]</typeMapping>
                                    </typeMappings>
                                    <configOptions>
                                        <useSwaggerAnnotations>false</useSwaggerAnnotations>
                                        <dateLibrary>java8-localdatetime</dateLibrary>
                                        <java8>true</java8>
                                        <sourceFolder>src/gen/java/main</sourceFolder>
                                    </configOptions>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>
</project>
