<?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">
  <modelVersion>4.0.0</modelVersion>

  <groupId>org.geysermc.floodgate</groupId>
  <artifactId>parent</artifactId>
  <version>2.0-SNAPSHOT</version>
  <packaging>pom</packaging>

  <name>floodgate</name>
  <description>Allows Bedrock players to join Java edition servers while keeping the server in online mode</description>
  <url>https://github.com/GeyserMC/Floodgate</url>
  <inceptionYear>2019</inceptionYear>
  <organization>
    <name>GeyserMC</name>
    <url>https://geysermc.org/</url>
  </organization>
  <licenses>
    <license>
      <name>MIT License</name>
      <url>https://opensource.org/licenses/MIT</url>
      <distribution>repo</distribution>
    </license>
  </licenses>

  <modules>
    <module>api</module>
    <module>common</module>
    <module>spigot</module>
    <module>bungee</module>
    <module>velocity</module>
    <module>database</module>
  </modules>

  <scm>
    <connection>scm:git:https://github.com/GeyserMC/Floodgate.git</connection>
    <developerConnection>scm:git:git@github.com:GeyserMC/Floodgate.git</developerConnection>
    <url>https://github.com/GeyserMC/Floodgate/</url>
  </scm>
  <issueManagement>
    <system>GitHub Issues</system>
    <url>https://github.com/GeyserMC/Cumulus/issues</url>
  </issueManagement>

  <properties>
    <geyser.version>1.4.2-SNAPSHOT</geyser.version>
    <cumulus.version>1.0-SNAPSHOT</cumulus.version>
    <spigot.version>1.13-R0.1-SNAPSHOT</spigot.version>
    <fastutil.version>8.5.3</fastutil.version>
    <lombok.version>1.18.20</lombok.version>
    <guice.version>5.0.1</guice.version>

    <netty.version>4.1.49.Final</netty.version>
    <snakeyaml.version>1.28</snakeyaml.version>
    <cloud.version>1.5.0</cloud.version>
    <adventure-api.version>4.9.1</adventure-api.version>
    <adventure-platform.version>4.0.0</adventure-platform.version>

    <outputName>floodgate-${project.name}</outputName>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
  </properties>

  <dependencies>
    <dependency>
      <groupId>org.projectlombok</groupId>
      <artifactId>lombok</artifactId>
      <version>${lombok.version}</version>
      <scope>provided</scope>
    </dependency>
  </dependencies>

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-pmd-plugin</artifactId>
        <version>3.14.0</version>
        <configuration>
          <rulesets>
            <ruleset>${session.executionRootDirectory}/ruleset.xml</ruleset>
          </rulesets>
          <printFailingErrors>true</printFailingErrors>
        </configuration>
        <executions>
          <execution>
            <goals>
              <goal>check</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>pl.project13.maven</groupId>
        <artifactId>git-commit-id-plugin</artifactId>
        <version>4.0.0</version>
        <executions>
          <execution>
            <id>get-the-git-infos</id>
            <goals>
              <goal>revision</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <generateGitPropertiesFile>true</generateGitPropertiesFile>
          <generateGitPropertiesFilename>${project.build.outputDirectory}/git.properties</generateGitPropertiesFilename>
          <format>properties</format>
          <failOnNoGitDirectory>false</failOnNoGitDirectory>
          <failOnUnableToExtractRepoInfo>false</failOnUnableToExtractRepoInfo>
          <runOnlyOnce>false</runOnlyOnce>
          <verbose>true</verbose>
          <skipPoms>false</skipPoms>
          <excludeProperties>
            <excludeProperty>git.user.*</excludeProperty>
            <excludeProperty>git.*.user.*</excludeProperty>
            <excludeProperty>git.closest.*</excludeProperty>
            <excludeProperty>git.commit.id.describe</excludeProperty>
            <excludeProperty>git.commit.id.describe-short</excludeProperty>
            <excludeProperty>git.commit.message.short</excludeProperty>
          </excludeProperties>
          <commitIdGenerationMode>flat</commitIdGenerationMode>
          <gitDescribe>
            <always>true</always>
          </gitDescribe>
        </configuration>
      </plugin>
    </plugins>
  </build>

  <reporting>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-pmd-plugin</artifactId>
        <version>3.14.0</version>
        <configuration>
          <rulesets>
            <ruleset>${session.executionRootDirectory}/ruleset.xml</ruleset>
          </rulesets>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jxr-plugin</artifactId>
        <version>2.3</version>
      </plugin>
    </plugins>
  </reporting>
</project>
