<?xml version="1.0" encoding="UTF-8" ?>
<!--

    Copyright (c) 2021, 2022 Oracle and/or its affiliates. All rights reserved.

    This program and the accompanying materials are made available under the
    terms of the Eclipse Public License v. 2.0, which is available at
    http://www.eclipse.org/legal/epl-2.0.

    This Source Code may also be made available under the following Secondary
    Licenses when the conditions for such availability set forth in the
    Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
    version 2 with the GNU Classpath Exception, which is available at
    https://www.gnu.org/software/classpath/license.html.

    SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0

-->
<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>org.glassfish.jersey.core</groupId>
    <artifactId>jersey-tck</artifactId>
    <version>5.0.0-SNAPSHOT</version>
    <packaging>jar</packaging>

    <parent>
        <groupId>jakarta.ws.rs</groupId>
        <artifactId>all</artifactId>
        <version>5.0.0-SNAPSHOT</version>
    </parent>

    <name>Jakarta RESTful WS Compliance</name>
    <description>This test verifies the compliance of Eclipse Jersey with Jakarta REST</description>

    <properties>
        <maven.compiler.release>21</maven.compiler.release>
        <jersey.version>4.0.0-M4</jersey.version>
        <glassfish.container.version>8.0.0-M13</glassfish.container.version>
        <glassfish.home>${project.build.directory}/glassfish8</glassfish.home>
        <jakarta.platform.version>11.0.0</jakarta.platform.version>
        <junit.jupiter.version>6.0.0</junit.jupiter.version>
        <jakarta.rest.version>5.0.0-SNAPSHOT</jakarta.rest.version>
        <tck.artifactId>jakarta-restful-ws-tck</tck.artifactId>
    </properties>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.junit</groupId>
                <artifactId>junit-bom</artifactId>
                <version>${junit.jupiter.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.glassfish.jersey</groupId>
                <artifactId>jersey-bom</artifactId>
                <version>${jersey.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <dependencies>
        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter</artifactId>
            <version>${junit.jupiter.version}</version>
        </dependency>
        
        <dependency>
            <groupId>org.glassfish.hk2</groupId>
            <artifactId>hk2-locator</artifactId>
            <version>4.0.0-M3</version>
        </dependency>

        <dependency>
            <groupId>com.sun.xml.bind</groupId>
            <artifactId>jaxb-impl</artifactId>
            <version>4.0.6</version>
            <scope>runtime</scope>
        </dependency>

        <dependency>
            <groupId>org.jboss.arquillian.container</groupId>
            <artifactId>arquillian-glassfish-managed-6</artifactId>
            <version>1.0.0.Alpha1</version>
        </dependency>

        <dependency>
            <groupId>jakarta.ws.rs</groupId>
            <artifactId>${tck.artifactId}</artifactId>
            <version>${project.version}</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>jakarta.ws.rs</groupId>
            <artifactId>jakarta.ws.rs-api</artifactId>
            <version>${project.parent.version}</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.hamcrest</groupId>
            <artifactId>hamcrest</artifactId>
            <version>3.0</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.glassfish.main.common</groupId>
            <artifactId>simple-glassfish-api</artifactId>
            <version>${glassfish.container.version}</version>
        </dependency>

        <dependency>
            <groupId>org.jboss.arquillian.junit5</groupId>
            <artifactId>arquillian-junit5-container</artifactId>
            <version>1.10.0.Final</version>
        </dependency>

        <dependency>
            <groupId>jakarta.platform</groupId>
            <artifactId>jakarta.jakartaee-api</artifactId>
            <version>${jakarta.platform.version}</version>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>commons-httpclient</groupId>
            <artifactId>commons-httpclient</artifactId>
            <version>3.1</version>
        </dependency>

        <dependency>
            <groupId>org.glassfish.jersey.core</groupId>
            <artifactId>jersey-server</artifactId>
            <version>${jersey.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.glassfish.jersey.containers</groupId>
            <artifactId>jersey-container-grizzly2-http</artifactId>
            <version>${jersey.version}</version>
            <scope>test</scope>
        </dependency> 
        <dependency>
            <groupId>jakarta.tck</groupId>
            <artifactId>sigtest-maven-plugin</artifactId>
            <version>2.6</version>
        </dependency>
        <dependency>
            <groupId>org.glassfish.jersey.media</groupId>
            <artifactId>jersey-media-json-binding</artifactId>
            <version>${jersey.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.glassfish.jersey.media</groupId>
            <artifactId>jersey-media-jaxb</artifactId>
            <version>${jersey.version}</version>
            <scope>test</scope>
        </dependency>
       <dependency>
            <groupId>org.glassfish.jersey.media</groupId>
            <artifactId>jersey-media-sse</artifactId>
            <version>${jersey.version}</version>
            <scope>test</scope>
        </dependency>

    </dependencies>


    <build>	    
    <plugins>
            <plugin>
                <artifactId>maven-dependency-plugin</artifactId>
                <version>3.2.0</version>
                <executions>
                    <execution>
                        <id>unpack</id>
                        <phase>pre-integration-test</phase>
                        <goals>
                            <goal>unpack</goal>
                        </goals>
                        <configuration>
                            <artifactItems>
                                <artifactItem>
                                    <groupId>org.glassfish.main.distributions</groupId>
                                    <artifactId>glassfish</artifactId>
                                    <version>${glassfish.container.version}</version>
                                    <type>zip</type>
                                    <overWrite>false</overWrite>
                                    <outputDirectory>${project.build.directory}</outputDirectory>
                                </artifactItem>
                            </artifactItems>
                        </configuration>
                    </execution>
                    <execution>
                        <id>copy</id>
                        <phase>pre-integration-test</phase>
                        <goals>
                            <goal>copy</goal>
                        </goals>
                        <configuration>
                            <artifactItems>
                                <artifactItem>
                                    <groupId>org.glassfish.jersey.core</groupId>
                                    <artifactId>jersey-client</artifactId>
                                    <version>${jersey.version}</version>
                                    <type>jar</type>
                                    <overWrite>true</overWrite>
                                    <outputDirectory>${glassfish.home}/glassfish/modules</outputDirectory>
                                    <destFileName>jersey-client.jar</destFileName>
                                </artifactItem>
                                <artifactItem>
                                    <groupId>org.glassfish.jersey.core</groupId>
                                    <artifactId>jersey-server</artifactId>
                                    <version>${jersey.version}</version>
                                    <type>jar</type>
                                    <overWrite>true</overWrite>
                                    <outputDirectory>${glassfish.home}/glassfish/modules</outputDirectory>
                                    <destFileName>jersey-server.jar</destFileName>
                                </artifactItem>
                                <artifactItem>
                                    <groupId>org.glassfish.jersey.core</groupId>
                                    <artifactId>jersey-common</artifactId>
                                    <version>${jersey.version}</version>
                                    <type>jar</type>
                                    <overWrite>true</overWrite>
                                    <outputDirectory>${glassfish.home}/glassfish/modules</outputDirectory>
                                    <destFileName>jersey-common.jar</destFileName>
                                </artifactItem>
                                <artifactItem>
                                    <groupId>org.glassfish.jersey.containers</groupId>
                                    <artifactId>jersey-container-grizzly2-http</artifactId>
                                    <version>${jersey.version}</version>
                                    <type>jar</type>
                                    <overWrite>true</overWrite>
                                    <outputDirectory>${glassfish.home}/glassfish/modules</outputDirectory>
                                    <destFileName>jersey-container-grizzly2-http.jar</destFileName>
                                </artifactItem>
                                <artifactItem>
                                    <groupId>org.glassfish.jersey.containers</groupId>
                                    <artifactId>jersey-container-servlet</artifactId>
                                    <version>${jersey.version}</version>
                                    <type>jar</type>
                                    <overWrite>true</overWrite>
                                    <outputDirectory>${glassfish.home}/glassfish/modules</outputDirectory>
                                    <destFileName>jersey-container-servlet.jar</destFileName>
                                </artifactItem>
                                <artifactItem>
                                    <groupId>org.glassfish.jersey.media</groupId>
                                    <artifactId>jersey-media-sse</artifactId>
                                    <version>${jersey.version}</version>
                                    <type>jar</type>
                                    <overWrite>true</overWrite>
                                    <outputDirectory>${glassfish.home}/glassfish/modules</outputDirectory>
                                    <destFileName>jersey-media-sse.jar</destFileName>
                                </artifactItem>
                                <artifactItem>
                                    <groupId>org.glassfish.jersey.media</groupId>
                                    <artifactId>jersey-media-json-binding</artifactId>
                                    <version>${jersey.version}</version>
                                    <type>jar</type>
                                    <overWrite>true</overWrite>
                                    <outputDirectory>${glassfish.home}/glassfish/modules</outputDirectory>
                                    <destFileName>jersey-media-json-binding.jar</destFileName>
                                </artifactItem>
                                 <artifactItem>
                                    <groupId>jakarta.ws.rs</groupId>
                                    <artifactId>jakarta.ws.rs-api</artifactId>
                                    <version>${jakarta.rest.version}</version>
                                    <type>jar</type>
                                    <overWrite>true</overWrite>
                                    <outputDirectory>${glassfish.home}/glassfish/modules</outputDirectory>
                                    <destFileName>jakarta.ws.rs-api.jar</destFileName>
                                </artifactItem>
                            </artifactItems>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <artifactId>exec-maven-plugin</artifactId>
                <groupId>org.codehaus.mojo</groupId>
                <executions>
                    <execution>
                        <id>StopDomain1</id>
                        <phase>pre-integration-test</phase>
                        <goals>
                            <goal>exec</goal>
                        </goals>
                        <configuration>
                            <executable>${glassfish.home}/glassfish/bin/asadmin</executable>
                            <arguments>
                                <argument>stop-domain</argument>
                            </arguments>
                        </configuration>
                    </execution>
                    <execution>
                        <id>StartDomain1</id>
                        <phase>pre-integration-test</phase>
                        <goals>
                            <goal>exec</goal>
                        </goals>
                        <configuration>
                            <executable>${glassfish.home}/glassfish/bin/asadmin</executable>
                            <arguments>
                                <argument>start-domain</argument>
                            </arguments>
                        </configuration>
                    </execution>
                    <execution>
                        <id>Enable Trace requests</id>
                        <phase>pre-integration-test</phase>
                        <goals>
                            <goal>exec</goal>
                        </goals>
                        <configuration>
                            <executable>${glassfish.home}/glassfish/bin/asadmin</executable>
                            <arguments>
                                <argument>set</argument>
                                <argument>server-config.network-config.protocols.protocol.http-listener-1.http.trace-enabled=true</argument>
                            </arguments>
                        </configuration>
                    </execution>
                    <execution>
                        <id>Delete User j2ee</id>
                        <phase>pre-integration-test</phase>
                        <goals>
                            <goal>exec</goal>
                        </goals>
                        <configuration>
                            <executable>${glassfish.home}/glassfish/bin/asadmin</executable>
                            <arguments>
                                <argument>--passwordfile</argument>
                                <argument>${project.basedir}/j2ee.pass</argument>
                                <argument>delete-file-user</argument>
                                <argument>j2ee</argument>
                            </arguments>
                            <successCodes>
                                <successCode>0</successCode>
                                <successCode>1</successCode>
                            </successCodes>
                        </configuration>
                    </execution>
                    <execution>
                        <id>Add User j2ee</id>
                        <phase>pre-integration-test</phase>
                        <goals>
                            <goal>exec</goal>
                        </goals>
                        <configuration>
                            <executable>${glassfish.home}/glassfish/bin/asadmin</executable>
                            <arguments>
                                <argument>--passwordfile</argument>
                                <argument>${project.basedir}/j2ee.pass</argument>
                                <argument>create-file-user</argument>
                                <argument>--groups</argument>
                                <argument>staff:mgr</argument>
                                <argument>j2ee</argument>
                            </arguments>
                        </configuration>
                    </execution>
                    <execution>
                        <id>Delete User javajoe</id>
                        <phase>pre-integration-test</phase>
                        <goals>
                            <goal>exec</goal>
                        </goals>
                        <configuration>
                            <executable>${glassfish.home}/glassfish/bin/asadmin</executable>
                            <arguments>
                                <argument>--passwordfile</argument>
                                <argument>${project.basedir}/javajoe.pass</argument>
                                <argument>delete-file-user</argument>
                                <argument>javajoe</argument>
                            </arguments>
                            <successCodes>
                                <successCode>0</successCode>
                                <successCode>1</successCode>
                            </successCodes>
                        </configuration>
                    </execution>
                    <execution>
                        <id>Add User javajoe</id>
                        <phase>pre-integration-test</phase>
                        <goals>
                            <goal>exec</goal>
                        </goals>
                        <configuration>
                            <executable>${glassfish.home}/glassfish/bin/asadmin</executable>
                            <arguments>
                                <argument>--passwordfile</argument>
                                <argument>${project.basedir}/javajoe.pass</argument>
                                <argument>create-file-user</argument>
                                <argument>--groups</argument>
                                <argument>guest</argument>
                                <argument>javajoe</argument>
                            </arguments>
                        </configuration>
                    </execution>
                    <execution>
                        <id>list users</id>
                        <phase>pre-integration-test</phase>
                        <goals>
                            <goal>exec</goal>
                        </goals>
                        <configuration>
                            <executable>${glassfish.home}/glassfish/bin/asadmin</executable>
                            <arguments>
                                <argument>list-file-users</argument>
                            </arguments>
                        </configuration>
                    </execution>
                    <execution>
                        <id>StopDomain</id>
                        <phase>pre-integration-test</phase>
                        <goals>
                            <goal>exec</goal>
                        </goals>
                        <configuration>
                            <executable>${glassfish.home}/glassfish/bin/asadmin</executable>
                            <arguments>
                                <argument>stop-domain</argument>
                            </arguments>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            
            <plugin>
                <artifactId>maven-failsafe-plugin</artifactId>
                <version>3.5.4</version>
                <executions>
                    <execution>
                        <id>gf-tests</id>
                        <goals>
                            <goal>integration-test</goal>
                            <goal>verify</goal>
                        </goals>
                        <configuration>
                            <excludes>
                                <exclude>**/SeBootstrapIT.java</exclude>
                            </excludes>
                            <dependenciesToScan>jakarta.ws.rs:${tck.artifactId}</dependenciesToScan>
                            <systemPropertyVariables>
                                <GLASSFISH_HOME>${glassfish.home}</GLASSFISH_HOME>
                                <servlet_adaptor>org.glassfish.jersey.servlet.ServletContainer</servlet_adaptor>
                                <webServerHost>localhost</webServerHost>
                                <webServerPort>8080</webServerPort>
                                <junit.log.traceflag>true</junit.log.traceflag>
                                <user>j2ee</user>
                                <password>j2ee</password>
                                <authuser>javajoe</authuser>
                                <authpassword>javajoe</authpassword>
                                <porting.ts.url.class.1>ee.jakarta.tck.ws.rs.lib.implementation.sun.common.SunRIURL</porting.ts.url.class.1>
                                <jimage.dir>${project.build.directory}/jdk21-bundle</jimage.dir>
                                <optional.tech.packages.to.ignore>jakarta.xml.bind</optional.tech.packages.to.ignore>
                                <signature.sigTestClasspath>${glassfish.home}/glassfish/modules/jakarta.ws.rs-api.jar:${glassfish.home}/glassfish/modules/jakarta.xml.bind-api.jar:${project.build.directory}/jdk21-bundle/java.base:${project.build.directory}/jdk21-bundle/java.rmi:${project.build.directory}/jdk21-bundle/java.sql:${project.build.directory}/jdk21-bundle/java.naming</signature.sigTestClasspath>
                            </systemPropertyVariables>
                            <environmentVariables>
                                <GLASSFISH_HOME>${glassfish.home}</GLASSFISH_HOME>
                            </environmentVariables>
                        </configuration>
                    </execution>
                    <execution>
                        <id>se-tests</id>
                        <goals>
                            <goal>integration-test</goal>
                            <goal>verify</goal>
                        </goals>
                        <configuration>
                            <includes>
                                <include>**/SeBootstrapIT.java</include>
                            </includes>
                            <dependenciesToScan>jakarta.ws.rs:${tck.artifactId}</dependenciesToScan>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>
