<?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>mcspring-build</artifactId>
        <groupId>in.kyle.mcspring</groupId>
        <version>0.0.8</version>
    </parent>

    <packaging>pom</packaging>

    <modules>
        <module>../../mcspring-examples</module>
        <module>../mcspring-plugin-manager</module>
    </modules>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>mcspring-starter</artifactId>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>in.kyle.mcspring</groupId>
                <artifactId>mcspring-base</artifactId>
                <version>0.0.8</version>
            </dependency>
            <dependency>
                <groupId>in.kyle.mcspring</groupId>
                <artifactId>mcspring-subcommands</artifactId>
                <version>0.0.8</version>
            </dependency>
            <dependency>
                <groupId>in.kyle.mcspring</groupId>
                <artifactId>mcspring-annotations</artifactId>
                <version>0.0.8</version>
                <scope>provided</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                    <version>${spring.version}</version>
                    <configuration>
                        <mainClass>ignored</mainClass>
                        <layoutFactory
                                implementation="in.kyle.mcspring.layout.McSpringLayoutFactory">
                            <name>mcspring</name>
                        </layoutFactory>
                    </configuration>
                    <dependencies>
                        <dependency>
                            <groupId>in.kyle.mcspring</groupId>
                            <artifactId>mcspring-plugin-layout</artifactId>
                            <!--suppress MavenModelInspection -->
                            <version>0.0.8</version>
                        </dependency>
                    </dependencies>
                    <executions>
                        <execution>
                            <id>build-info</id>
                            <goals>
                                <goal>repackage</goal>
                                <goal>build-info</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <artifactId>maven-antrun-plugin</artifactId>
                    <version>1.8</version>
                    <executions>
                        <execution>
                            <phase>package</phase>
                            <goals>
                                <goal>run</goal>
                            </goals>
                            <configuration>
                                <target>
                                    <touch file="${project.build.directory}/${project.build.finalName}.jar" />
                                </target>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>com.coderplus.maven.plugins</groupId>
                    <artifactId>copy-rename-maven-plugin</artifactId>
                    <version>1.0.1</version>
                    <executions>
                        <execution>
                            <id>init</id>
                            <phase>package</phase>
                            <goals>
                                <goal>copy</goal>
                            </goals>
                            <configuration>
                                <sourceFile>
                                    ${project.build.directory}/${project.artifactId}.jar
                                </sourceFile>
                                <destinationFile>
                                    ${project.basedir}/spigot/plugins/${project.artifactId}.jar
                                </destinationFile>
                            </configuration>
                        </execution>
                        <execution>
                            <id>copy-plugin</id>
                            <phase>package</phase>
                            <goals>
                                <goal>copy</goal>
                            </goals>
                            <configuration>
                                <sourceFile>
                                    ${project.build.directory}/${project.artifactId}.jar
                                </sourceFile>
                                <destinationFile>
                                    ${project.basedir}/spigot/plugins/update/${project.artifactId}.jar
                                </destinationFile>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>com.googlecode.maven-download-plugin</groupId>
                    <artifactId>download-maven-plugin</artifactId>
                    <version>1.3.0</version>
                    <executions>
                        <execution>
                            <phase>generate-resources</phase>
                            <goals>
                                <goal>wget</goal>
                            </goals>
                            <configuration>
                                <url>https://cdn.getbukkit.org/spigot/spigot-1.15.2.jar</url>
                                <outputFileName>spigot.jar</outputFileName>
                                <outputDirectory>${project.basedir}/spigot</outputDirectory>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>

    <profiles>
        <profile>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <id>generate-yml</id>
            <properties>
                <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>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.springframework.boot</groupId>
                        <artifactId>spring-boot-maven-plugin</artifactId>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-antrun-plugin</artifactId>
                    </plugin>
                    <plugin>
                        <groupId>com.coderplus.maven.plugins</groupId>
                        <artifactId>copy-rename-maven-plugin</artifactId>
                    </plugin>
                    <plugin>
                        <groupId>com.googlecode.maven-download-plugin</groupId>
                        <artifactId>download-maven-plugin</artifactId>
                    </plugin>
                </plugins>
                <finalName>${project.artifactId}</finalName>
            </build>
            <dependencies>
                <dependency>
                    <groupId>in.kyle.mcspring</groupId>
                    <artifactId>mcspring-annotations</artifactId>
                </dependency>
                <dependency>
                    <groupId>in.kyle.mcspring</groupId>
                    <artifactId>mcspring-base</artifactId>
                </dependency>
                <!--Spigot API-->
                <dependency>
                    <groupId>org.spigotmc</groupId>
                    <artifactId>spigot-api</artifactId>
                    <version>${spigot.version}</version>
                    <scope>provided</scope>
                </dependency>
                <!--Bukkit API-->
                <dependency>
                    <groupId>org.bukkit</groupId>
                    <artifactId>bukkit</artifactId>
                    <version>${spigot.version}</version>
                    <scope>provided</scope>
                </dependency>
            </dependencies>
        </profile>
    </profiles>
</project>
