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

<!-- Copyright 2011 Lincoln Baxter, III Licensed under the Apache License, Version 2.0 (the "License"); you may not use this 
   file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 
   Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS 
   IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language 
   governing permissions and limitations under the License. -->

<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.ocpsoft.rewrite</groupId>
   <artifactId>rewrite-parent</artifactId>
   <version>10.0.2.Final</version>
   <packaging>pom</packaging>

   <parent>
      <groupId>org.ocpsoft</groupId>
      <artifactId>ocpsoft-parent</artifactId>
      <version>16</version>
   </parent>

   <properties>

      <!-- Encoding -->
      <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
      <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
      <!-- Target Java version for compatibility -->
      <maven.compiler.release>11</maven.compiler.release>
      <!-- Minimum JDK necessary to successfully compile and test -->
      <maven.enforce.jdk>17.0.0</maven.enforce.jdk>

      <!-- Allow to ignore some failing integration tests -->
      <it.ignore.selectedFails>true</it.ignore.selectedFails>

      <!-- Versions -->
      <version.junit>4.13.2</version.junit>
      <version.common>1.0.6.Final</version.common>
      <version.logging>1.0.5.Final</version.logging>
      <version.arquillian>1.6.0.Final</version.arquillian>
      <version.arquillian.drone>2.5.5</version.arquillian.drone>
      <version.arquillian.container.managed.wildfly>5.0.0.Alpha5</version.arquillian.container.managed.wildfly>
      <version.arquillian.container.remote.wildfly>5.0.0.Alpha5</version.arquillian.container.remote.wildfly>
      <version.arquillian.container.managed.payara>3.0.alpha7</version.arquillian.container.managed.payara>

      <version.jakarta>10.0.0</version.jakarta>
      <version.jakarta-faces.impl>4.0.0</version.jakarta-faces.impl>
      <version.spring>6.0.0-M4</version.spring>
   
      <version.wildfly>27.0.0.Beta1</version.wildfly>

      <version.payara>6.2022.1</version.payara>
      <payara.home>${project.build.directory}/payara6</payara.home>
      <it.ignore.forPayaraVersion>IgnoreForPayara6</it.ignore.forPayaraVersion>

      <!-- Official Maven Plugins -->
      <version.maven-compiler-plugin>3.10.1</version.maven-compiler-plugin>
      <version.maven-jar-plugin>3.3.0</version.maven-jar-plugin>
      <version.maven-dependency-plugin>3.3.0</version.maven-dependency-plugin>
      <version.maven-shade-plugin>3.4.0</version.maven-shade-plugin>
      <version.maven-surefire-plugin>3.0.0-M7</version.maven-surefire-plugin>
      <version.maven-failsafe-plugin>3.0.0-M7</version.maven-failsafe-plugin>
      <version.maven-plugin-plugin>3.6.4</version.maven-plugin-plugin>
      <version.maven-site-plugin>4.0.0-M3</version.maven-site-plugin>
      <version.maven-source-plugin>3.2.1</version.maven-source-plugin>
      <version.maven-javadoc-plugin>3.4.1</version.maven-javadoc-plugin>
      <version.maven-release-plugin>3.0.1</version.maven-release-plugin>
      <version.maven-enforcer-plugin>3.1.0</version.maven-enforcer-plugin>
      <version.maven-flatten-plugin>1.5.0</version.maven-flatten-plugin>
      <version.maven-gpg-plugin>3.1.0</version.maven-gpg-plugin>
      <version.pomchecker-maven-plugin>1.9.0</version.pomchecker-maven-plugin>
      <version.nexus-staging-plugin>1.6.13</version.nexus-staging-plugin>

   </properties>

   <modules>
      <module>test-base</module>
      <module>test-harness</module>
      <module>api</module>
      <module>api-tests</module>
      <module>impl</module>
      <module>impl-tests</module>
      <module>annotations-api</module>
      <module>annotations-impl</module>
      <module>config-annotations</module>
      <module>config-prettyfaces</module>
      <module>config-prettyfaces-tests</module>
      <module>config-proxy</module>
      <module>config-servlet</module>
      <module>config-servlet-tests</module>
      <module>addressbuilder</module>
      <module>api-el</module>
      <module>api-servlet</module>
      <module>impl-servlet</module>
      <module>impl-servlet-tests</module>
      <module>transform</module>
      <module>transform-less</module>
      <module>transform-minify</module>
      <module>transform-markup</module>
      <module>integration-cdi</module>
      <module>integration-cdi-tests</module>
      <module>integration-faces</module>
      <module>integration-faces-tests</module>
      <module>integration-gwt</module>
      <module>integration-spring</module>
      <module>security-integration-shiro</module>
      <module>rewrite-servlet</module>
      <module>showcase</module>
      <!--<module>distribution</module>-->
      <module>examples</module>
      <module>documentation</module>
   </modules>

   <build>
      <plugins>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-enforcer-plugin</artifactId>
            <configuration>
               <rules>
                  <requireJavaVersion>
                     <version>${maven.enforce.jdk}</version>
                  </requireJavaVersion>
               </rules>
            </configuration>
         </plugin>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
         </plugin>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-shade-plugin</artifactId>
         </plugin>
         
         <plugin>
            <groupId>org.sonatype.plugins</groupId>
            <artifactId>nexus-staging-maven-plugin</artifactId>
            <extensions>true</extensions>
            <configuration>
               <serverId>ossrh</serverId>
               <nexusUrl>https://oss.sonatype.org</nexusUrl>
               <autoReleaseAfterClose>true</autoReleaseAfterClose>
            </configuration>
         </plugin>
         <plugin>
            <groupId>org.kordamp.maven</groupId>
            <artifactId>pomchecker-maven-plugin</artifactId>
         </plugin>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-release-plugin</artifactId>
            <configuration>
               <localCheckout>true</localCheckout>
               <autoVersionSubmodules>true</autoVersionSubmodules>
               <tagNameFormat>@{project.version}</tagNameFormat>
               <pushChanges>false</pushChanges>
               <checkModificationExcludes>
                  <checkModificationExclude>dependency-reduced-pom.xml</checkModificationExclude>
               </checkModificationExcludes>
            </configuration>
         </plugin>
         
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-failsafe-plugin</artifactId>
         </plugin>
      </plugins>
      <pluginManagement>
         <plugins>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-enforcer-plugin</artifactId>
               <version>${version.maven-enforcer-plugin}</version>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-compiler-plugin</artifactId>
               <version>${version.maven-compiler-plugin}</version>
               <configuration>
                  <release>${maven.compiler.release}</release>
               </configuration>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-jar-plugin</artifactId>
               <version>${version.maven-jar-plugin}</version>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-dependency-plugin</artifactId>
               <version>${version.maven-dependency-plugin}</version>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-shade-plugin</artifactId>
               <version>${version.maven-shade-plugin}</version>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-surefire-plugin</artifactId>
               <version>${version.maven-surefire-plugin}</version>
               <configuration>
                  <argLine>-Xms256m -Xmx512m</argLine>
               </configuration>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-failsafe-plugin</artifactId>
               <version>${version.maven-failsafe-plugin}</version>
               <executions>
                  <execution>
                     <goals>
                        <goal>integration-test</goal>
                        <goal>verify</goal>
                     </goals>
                  </execution>
               </executions>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-plugin-plugin</artifactId>
               <version>${version.maven-plugin-plugin}</version>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-site-plugin</artifactId>
               <version>${version.maven-site-plugin}</version>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-source-plugin</artifactId>
               <version>${version.maven-source-plugin}</version>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-javadoc-plugin</artifactId>
               <version>${version.maven-javadoc-plugin}</version>
               <configuration>
                  <failOnError>false</failOnError>
                  <links>
                     <link>https://docs.oracle.com/javase/8/docs/api/</link>
                     <link>https://jakarta.ee/specifications/platform/8/apidocs/</link>
                  </links>
                  <additionalparam>-Xdoclint:none</additionalparam>
               </configuration>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-release-plugin</artifactId>
               <version>${version.maven-release-plugin}</version>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-gpg-plugin</artifactId>
               <version>${version.maven-gpg-plugin}</version>
            </plugin>
            <plugin>
               <groupId>org.codehaus.mojo</groupId>
               <artifactId>flatten-maven-plugin</artifactId>
               <version>${version.maven-flatten-plugin}</version>
            </plugin>
            <plugin>
               <groupId>org.kordamp.maven</groupId>
               <artifactId>pomchecker-maven-plugin</artifactId>
               <version>${version.pomchecker-maven-plugin}</version>
            </plugin>
            <plugin>
               <groupId>org.sonatype.plugins</groupId>
               <artifactId>nexus-staging-maven-plugin</artifactId>
               <version>${version.nexus-staging-plugin}</version>
            </plugin>
         </plugins>
      </pluginManagement>

      <!-- Workaround for: https://jira.codehaus.org/browse/MNG-5525 -->
      <extensions>
         <extension>
            <groupId>org.apache.maven.wagon</groupId>
            <artifactId>wagon-http-lightweight</artifactId>
            <version>1.0</version>
         </extension>
      </extensions>

   </build>

   <repositories>
      <repository>
         <id>central-repo</id>
         <name>Central Repository</name>
         <url>https://repo1.maven.org/maven2</url>
         <layout>default</layout>
      </repository>
   </repositories>

   <dependencyManagement>
      <dependencies>
         <dependency>
            <groupId>org.ocpsoft.common</groupId>
            <artifactId>common-api</artifactId>
            <version>${version.common}</version>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.logging</groupId>
            <artifactId>logging-api</artifactId>
            <version>${version.logging}</version>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.logging</groupId>
            <artifactId>logging-adapter-slf4j</artifactId>
            <version>${version.logging}</version>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-api</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-api</artifactId>
            <version>${project.version}</version>
            <classifier>sources</classifier>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-api-el</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-api-el</artifactId>
            <version>${project.version}</version>
            <classifier>sources</classifier>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-impl</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-impl</artifactId>
            <version>${project.version}</version>
            <classifier>sources</classifier>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-config-annotations</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-config-annotations</artifactId>
            <version>${project.version}</version>
            <classifier>sources</classifier>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-annotations-api</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-annotations-api</artifactId>
            <version>${project.version}</version>
            <classifier>sources</classifier>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-annotations-impl</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-annotations-impl</artifactId>
            <version>${project.version}</version>
            <classifier>sources</classifier>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-config-prettyfaces</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-config-servlet</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-config-servlet</artifactId>
            <version>${project.version}</version>
            <classifier>sources</classifier>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-addressbuilder</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-addressbuilder</artifactId>
            <version>${project.version}</version>
            <classifier>sources</classifier>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-api-servlet</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-api-servlet</artifactId>
            <version>${project.version}</version>
            <classifier>sources</classifier>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-impl-servlet</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-impl-servlet</artifactId>
            <version>${project.version}</version>
            <classifier>sources</classifier>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-servlet</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-integration-cdi</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-integration-faces</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-security-integration-shiro</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-transform</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-transform-less</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-transform-markup</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-transform-minify</artifactId>
            <version>${project.version}</version>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-test-base</artifactId>
            <version>${project.version}</version>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.ocpsoft.rewrite</groupId>
            <artifactId>rewrite-test-harness</artifactId>
            <version>${project.version}</version>
            <scope>test</scope>
         </dependency>

         <dependency>
            <groupId>jakarta.platform</groupId>
            <artifactId>jakarta.jakartaee-bom</artifactId>
            <version>${version.jakarta}</version>
            <type>pom</type>
            <scope>import</scope>
         </dependency>
         <dependency>
            <groupId>org.glassfish</groupId>
            <artifactId>jakarta.faces</artifactId>
            <version>${version.jakarta-faces.impl}</version>
         </dependency>

         <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-framework-bom</artifactId>
            <version>6.0.9</version>
            <type>pom</type>
            <scope>import</scope>
         </dependency>

         <!-- Enforce this version of Xalan, because jboss-javaee-6.0 depends on a version which isn't available in central. 
            As this dependency is used only in 'provided' scope, this should be ok. -->
         <dependency>
            <groupId>xalan</groupId>
            <artifactId>xalan</artifactId>
            <version>2.7.3</version>
         </dependency>
         <dependency>
            <groupId>org.apache.taglibs</groupId>
            <artifactId>taglibs-standard-spec</artifactId>
            <version>1.2.5</version>
         </dependency>
         <dependency>
            <groupId>org.apache.taglibs</groupId>
            <artifactId>taglibs-standard-impl</artifactId>
            <version>1.2.5</version>
         </dependency>

         <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>${version.junit}</version>
            <scope>test</scope>
         </dependency>
         <dependency>
            <groupId>org.mockito</groupId>
            <artifactId>mockito-core</artifactId>
            <version>4.6.1</version>
            <scope>test</scope>
         </dependency>

         <dependency>
            <groupId>org.jboss.arquillian</groupId>
            <artifactId>arquillian-bom</artifactId>
            <version>${version.arquillian}</version>
            <type>pom</type>
            <scope>import</scope>
         </dependency>
         <dependency>
            <groupId>org.jboss.arquillian.extension</groupId>
            <artifactId>arquillian-drone-bom</artifactId>
            <version>${version.arquillian.drone}</version>
            <type>pom</type>
            <scope>import</scope>
         </dependency>
      </dependencies>
   </dependencyManagement>

   <dependencies>
      <dependency>
         <groupId>junit</groupId>
         <artifactId>junit</artifactId>
         <scope>test</scope>
      </dependency>
   </dependencies>

   <profiles>
      <profile>
         <id>EE9</id>
         <properties>
            <version.jakarta>9.1.0</version.jakarta>
            <version.jakarta-faces.impl>3.0.2</version.jakarta-faces.impl>

            <version.wildfly>26.1.2.Final</version.wildfly>

            <version.payara>5.2022.4</version.payara>
            <payara.home>${project.build.directory}/payara5</payara.home>
            <it.ignore.forPayaraVersion>IgnoreForPayara5</it.ignore.forPayaraVersion>
         </properties>
      </profile>

      <profile>
         <id>EE10</id>
         <activation>
            <activeByDefault>true</activeByDefault>
         </activation>
         <!-- Intentionally left blank - used for CI matrix compatibility only -->
      </profile>

      <!-- WILDFLY -->
      <profile>
         <id>WILDFLY_MANAGED</id>
         <build>
            <plugins>
               <plugin>
                  <groupId>org.apache.maven.plugins</groupId>
                  <artifactId>maven-failsafe-plugin</artifactId>
                  <configuration>
                     <environmentVariables>
                        <JBOSS_HOME>${project.build.directory}/container/wildfly-preview-${version.wildfly}</JBOSS_HOME>
                     </environmentVariables>
                     <excludedGroups>
                        org.ocpsoft.rewrite.category.IgnoreForWildfly
                     </excludedGroups>
                  </configuration>
               </plugin>
               <plugin>
                  <artifactId>maven-dependency-plugin</artifactId>
                  <extensions>false</extensions>
                  <executions>
                     <execution>
                        <id>unpack-wildfly</id>
                        <phase>pre-integration-test</phase>
                        <goals>
                           <goal>unpack</goal>
                        </goals>
                        <configuration>
                           <artifactItems>
                              <artifactItem>
                                 <groupId>org.wildfly</groupId>
                                 <artifactId>wildfly-preview-dist</artifactId>
                                 <version>${version.wildfly}</version>
                                 <type>zip</type>
                                 <overWrite>false</overWrite>
                                 <outputDirectory>${project.build.directory}/container</outputDirectory>
                              </artifactItem>
                           </artifactItems>
                        </configuration>
                     </execution>
                  </executions>
               </plugin>
            </plugins>
         </build>
         <dependencies>
            <dependency>
               <groupId>org.wildfly.arquillian</groupId>
               <artifactId>wildfly-arquillian-container-managed</artifactId>
               <version>${version.arquillian.container.managed.wildfly}</version>
               <scope>test</scope>
            </dependency>
         </dependencies>
      </profile>

      <profile>
         <id>WILDFLY_REMOTE</id>
         <dependencies>
            <dependency>
               <groupId>org.wildfly.arquillian</groupId>
               <artifactId>wildfly-arquillian-container-remote</artifactId>
               <version>${version.arquillian.container.remote.wildfly}</version>
               <scope>test</scope>
            </dependency>
         </dependencies>
         <build>
            <plugins>
               <plugin>
                  <artifactId>maven-dependency-plugin</artifactId>
                  <extensions>false</extensions>
                  <executions>
                     <execution>
                        <id>unpack-wildfly</id>
                        <phase>pre-integration-test</phase>
                        <goals>
                           <goal>unpack</goal>
                        </goals>
                        <configuration>
                           <artifactItems>
                              <artifactItem>
                                 <groupId>org.wildfly</groupId>
                                 <artifactId>wildfly-preview-dist</artifactId>
                                 <version>${version.wildfly}</version>
                                 <type>zip</type>
                                 <overWrite>false</overWrite>
                                 <outputDirectory>${project.build.directory}/container</outputDirectory>
                              </artifactItem>
                           </artifactItems>
                        </configuration>
                     </execution>
                  </executions>
               </plugin>
               <plugin>
                  <groupId>org.apache.maven.plugins</groupId>
                  <artifactId>maven-failsafe-plugin</artifactId>
                  <configuration>
                     <excludedGroups>
                        org.ocpsoft.rewrite.category.IgnoreForWildfly
                     </excludedGroups>
                  </configuration>
               </plugin>
               <plugin>
                  <groupId>org.wildfly.plugins</groupId>
                  <artifactId>wildfly-maven-plugin</artifactId>
                  <version>3.0.2.Final</version>
                  <executions>
                     <execution>
                        <id>start-wildfly</id>
                        <phase>pre-integration-test</phase>
                        <goals>
                           <goal>start</goal>
                        </goals>
                     </execution>
                     <execution>
                        <id>stop-wildfly</id>
                        <phase>post-integration-test</phase>
                        <goals>
                           <goal>shutdown</goal>
                        </goals>
                     </execution>
                  </executions>
                  <configuration>
                     <jbossHome>${project.build.directory}/container/wildfly-preview-${version.wildfly}</jbossHome>
                  </configuration>
               </plugin>
            </plugins>
         </build>
      </profile>


      <!-- PAYARA -->
      <profile>
         <id>PAYARA_MANAGED</id>
         <properties>
            <skipTests>false</skipTests>
         </properties>
         <dependencies>

            <!-- Required since arquillian-payara 2.4 -->
            <dependency>
               <groupId>fish.payara.arquillian</groupId>
               <artifactId>payara-client-ee9</artifactId>
               <version>${version.arquillian.container.managed.payara}</version>
            </dependency>

            <!-- Payara Server Container adaptor -->
            <dependency>
               <groupId>fish.payara.arquillian</groupId>
               <artifactId>arquillian-payara-server-managed</artifactId>
               <version>${version.arquillian.container.managed.payara}</version>
               <scope>test</scope>
            </dependency>

            <!-- Env Sync -->
            <dependency>
               <groupId>fish.payara.arquillian</groupId>
               <artifactId>environment-setup</artifactId>
               <version>${version.arquillian.container.managed.payara}</version>
               <scope>test</scope>
            </dependency>

         </dependencies>
         <build>
            <plugins>
               <plugin>
                  <groupId>org.apache.maven.plugins</groupId>
                  <artifactId>maven-dependency-plugin</artifactId>
                  <version>${version.dependency.plugin}</version>
                  <executions>
                     <execution>
                        <id>unpack</id>
                        <phase>pre-integration-test</phase>
                        <goals>
                           <goal>unpack</goal>
                        </goals>
                        <configuration>
                           <artifactItems>
                              <artifactItem>
                                 <groupId>fish.payara.distributions</groupId>
                                 <artifactId>payara</artifactId>
                                 <version>${version.payara}</version>
                                 <type>zip</type>
                                 <overWrite>false</overWrite>
                                 <outputDirectory>${project.build.directory}</outputDirectory>
                              </artifactItem>
                           </artifactItems>
                        </configuration>
                     </execution>
                  </executions>
               </plugin>
               <plugin>
                  <groupId>org.apache.maven.plugins</groupId>
                  <artifactId>maven-failsafe-plugin</artifactId>
                  <version>${version.failsafe.plugin}</version>
                  <configuration>
                     <excludedGroups>
                        org.ocpsoft.rewrite.category.IgnoreForPayara,
                        ${it.ignore.forPayaraVersion}
                     </excludedGroups>
                     <argLine>--illegal-access=debug --add-opens=java.base/java.util=ALL-UNNAMED</argLine>
                     <systemPropertyVariables>
                        <payara.home>${payara.home}</payara.home>
                     </systemPropertyVariables>
                  </configuration>
               </plugin>
            </plugins>
         </build>
      </profile>


   </profiles>

   <developers>
      <developer>
         <id>lincolnbaxter</id>
         <name>Lincoln Baxter, III</name>
         <email>lincoln@ocpsoft.org</email>
         <timezone>-5</timezone>
      </developer>
      <developer>
         <id>chkalt</id>
         <name>Christian Kaltepoth</name>
         <email>christian@kaltepoth.de</email>
         <url>http://chkal.blogspot.com/</url>
         <timezone>+1</timezone>
      </developer>
      <developer>
         <id>larsgrefer</id>
         <name>Lars Grefer</name>
         <email>github@larsgrefer.de</email>
         <timezone>Europe/Berlin</timezone>
      </developer>
      <developer>
         <id>poikilotherm</id>
         <name>Oliver Bertuch</name>
         <email>github@bertuch.eu</email>
         <timezone>Europe/Berlin</timezone>
      </developer>
   </developers>

   <url>https://ocpsoft.org/rewrite/</url>

   <licenses>
      <license>
         <name>Apache License</name>
         <url>https://www.apache.org/licenses/</url>
         <distribution>repo</distribution>
      </license>
   </licenses>

   <scm>
      <connection>scm:git:git://github.com/ocpsoft/rewrite.git</connection>
      <developerConnection>scm:git:git@github.com:ocpsoft/rewrite.git</developerConnection>
      <url>https://github.com/ocpsoft/rewrite</url>
      <tag>10.0.2.Final</tag>
   </scm>

   <issueManagement>
      <system>GitHub Issues</system>
      <url>https://github.com/ocpsoft/rewrite/issues</url>
   </issueManagement>

   <ciManagement>
      <system>GitHub Actions</system>
      <url>https://github.com/ocpsoft/rewrite/actions</url>
   </ciManagement>

</project>
