<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>br.com.fiorilli</groupId>
    <artifactId>Sincronizador</artifactId>
    <version>2.0.9</version>
    <packaging>war</packaging>

    <name>Sincronizador${project.profile.selected}</name>

    <properties>
        <endorsed.dir>${project.build.directory}/endorsed</endorsed.dir>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.profile.selected>FullComLib</project.profile.selected>
        <project.profile.exclusions>**/naoexcluir/*</project.profile.exclusions>
        <project.profile.test.exclusions>*</project.profile.test.exclusions>
        <project.profile.execution>full-com-lib</project.profile.execution>
        <escopo.dependencia>compile</escopo.dependencia>
        <escopo.dependencia.jboss>compile</escopo.dependencia.jboss>
        <webmodule.context.path>/sincronizador</webmodule.context.path>
        <webmodule.virtualhost> </webmodule.virtualhost>
    </properties>

    <repositories>
        <repository>
            <id>fiorilli-maven-repository</id>
            <url>https://nexus.fiorilli.com.br/repository/fiorilli-maven-repository</url>
            <layout>default</layout>
        </repository>
    </repositories>
    <pluginRepositories>
        <pluginRepository>
            <id>fiorilli-maven-repository</id>
            <url>https://nexus.fiorilli.com.br/repository/fiorilli-maven-repository</url>
            <layout>default</layout>
            <releases>
                <enabled>true</enabled>
            </releases>
        </pluginRepository>
    </pluginRepositories>

    <scm>
        <developerConnection>scm:git:https://gitlab.fiorilli.com.br/sia/java/sincronizador.git</developerConnection>
        <tag>Sincronizador-2.0.9</tag>
    </scm>

    <dependencies>

        <dependency>
            <groupId>br.com.fiorilli</groupId>
            <artifactId>fiorilli-utils</artifactId>
            <version>2.15</version>
        </dependency>
        <dependency>
            <groupId>com.sun.jersey</groupId>
            <artifactId>jersey-json</artifactId>
            <version>1.19.1</version>
            <exclusions>
                <exclusion>
                    <groupId>javax.activation</groupId>
                    <artifactId>activation</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.codehaus.jackson</groupId>
                    <artifactId>jackson-jaxrs</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.codehaus.jackson</groupId>
                    <artifactId>jackson-mapper-asl</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.codehaus.jackson</groupId>
                    <artifactId>jackson-xc</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.codehaus.jackson</groupId>
                    <artifactId>jackson-core-asl</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.codehaus.jettison</groupId>
                    <artifactId>jettison</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>com.sun.xml.bind</groupId>
                    <artifactId>jaxb-impl</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

        <dependency>
            <groupId>org.codehaus.jackson</groupId>
            <artifactId>jackson-jaxrs</artifactId>
            <version>1.9.2</version>
            <scope>${escopo.dependencia}</scope>
        </dependency>

        <dependency>
            <groupId>org.codehaus.jackson</groupId>
            <artifactId>jackson-core-asl</artifactId>
            <version>1.9.2</version>
            <scope>${escopo.dependencia.jboss}</scope>
        </dependency>

        <dependency>
            <groupId>org.codehaus.jackson</groupId>
            <artifactId>jackson-mapper-asl</artifactId>
            <version>1.9.2</version>
            <scope>${escopo.dependencia.jboss}</scope>
        </dependency>

        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-core</artifactId>
            <version>4.2.6.Final</version>
            <scope>${escopo.dependencia.jboss}</scope>
        </dependency>

        <dependency>
            <groupId>org.hibernate.javax.persistence</groupId>
            <artifactId>hibernate-jpa-2.0-api</artifactId>
            <version>1.0.1.Final</version>
            <scope>${escopo.dependencia.jboss}</scope>
        </dependency>

        <dependency>
            <groupId>org.hibernate.common</groupId>
            <artifactId>hibernate-commons-annotations</artifactId>
            <version>4.0.2.Final</version>
            <scope>${escopo.dependencia.jboss}</scope>
        </dependency>

        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-entitymanager</artifactId>
            <version>4.2.6.Final</version>
            <scope>${escopo.dependencia.jboss}</scope>
        </dependency>

        <dependency>
            <groupId>org.jboss.resteasy</groupId>
            <artifactId>resteasy-jettison-provider</artifactId>
            <version>3.0.8.Final</version>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>javax</groupId>
            <artifactId>javaee-web-api</artifactId>
            <version>6.0</version>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>com.google.code.gson</groupId>
            <artifactId>gson</artifactId>
            <version>2.3.1</version>
            <scope>${escopo.dependencia}</scope>
        </dependency>

        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.5</version>
            <scope>${escopo.dependencia}</scope>
        </dependency>

        <dependency>
            <groupId>commons-beanutils</groupId>
            <artifactId>commons-beanutils</artifactId>
            <version>1.9.3</version>
            <scope>${escopo.dependencia.jboss}</scope>
        </dependency>

        <dependency>
            <groupId>io.swagger</groupId>
            <artifactId>swagger-jaxrs</artifactId>
            <version>1.5.22</version>
        </dependency>

        <dependency>
            <groupId>com.googlecode.jmapper-framework</groupId>
            <artifactId>jmapper-core</artifactId>
            <version>1.6.0.1</version>
        </dependency>

        <dependency>
            <groupId>org.firebirdsql.jdbc</groupId>
            <artifactId>jaybird-jdk17</artifactId>
            <version>2.2.15</version>
        </dependency>

    </dependencies>

    <build>
        <finalName>${project.artifactId}${project.profile.selected}-${project.version}</finalName>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.11.0</version>
                <configuration>
                    <release>7</release>
                    <excludes>
                        <exclude>${project.profile.exclusions}</exclude>
                    </excludes>
                    <testExcludes>
                        <testExclude>${project.profile.test.exclusions}</testExclude>
                    </testExcludes>
                    <showDeprecation>false</showDeprecation>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>3.4.0</version>
                <configuration>
                    <webResources>
                        <resource>
                            <filtering>true</filtering>
                            <directory>src/main/webapp</directory>
                            <includes>
                                <include>**/jboss-web.xml</include>
                            </includes>
                        </resource>
                    </webResources>
                    <warSourceDirectory>src/main/webapp</warSourceDirectory>
                    <packagingExcludes>WEB-INF/web.xml</packagingExcludes>
                    <failOnMissingWebXml>false</failOnMissingWebXml>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-dependency-plugin</artifactId>
                <version>3.6.0</version>
                <executions>
                    <execution>
                        <phase>validate</phase>
                        <goals>
                            <goal>copy</goal>
                        </goals>
                        <configuration>
                            <outputDirectory>${endorsed.dir}</outputDirectory>
                            <silent>true</silent>
                            <artifactItems>
                                <artifactItem>
                                    <groupId>javax</groupId>
                                    <artifactId>javaee-endorsed-api</artifactId>
                                    <version>6.0</version>
                                    <type>jar</type>
                                </artifactItem>
                            </artifactItems>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-release-plugin</artifactId>
                <version>3.0.1</version>
                <configuration>
                    <autoVersionSubmodules>true</autoVersionSubmodules>
                    <scmCommentPrefix>[Geracao de nova versao]</scmCommentPrefix>
                    <checkModificationExcludes>
                        <checkModificationExclude>src\main\setup\*</checkModificationExclude>
                    </checkModificationExcludes>
                    <releaseProfiles>${project.profile.execution}</releaseProfiles>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
                <version>3.3.1</version>
                <configuration>
                    <encoding>${project.build.sourceEncoding}</encoding>
                    <propertiesEncoding>${project.build.sourceEncoding}</propertiesEncoding>
                </configuration>
            </plugin>
        </plugins>
    </build>

    <profiles>

        <profile>
            <id>JBoss/WildFly</id>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <properties>
                <escopo.dependencia.jboss>provided</escopo.dependencia.jboss>
            </properties>
        </profile>

        <!-- Inicio Build Profile (Somente SIA) -->
        <profile>
            <id>SIA</id>
            <properties>
                <project.profile.selected>SIA</project.profile.selected>
                <project.profile.exclusions>**/sis/*</project.profile.exclusions>
                <project.profile.test.exclusions>**/sis/**</project.profile.test.exclusions>
                <project.profile.execution>SIA</project.profile.execution>
            </properties>
            <build>
                <resources>
                    <resource>
                        <directory>src/main/resources-sia</directory>
                        <filtering>true</filtering>
                    </resource>
                </resources>
            </build>
        </profile>
        <!-- Fim Build Profile (Somente SIA) -->

        <!-- Inicio Build Profile (Somente SIS) -->
        <profile>
            <id>SIS</id>
            <properties>
                <project.profile.selected>SIS</project.profile.selected>
                <project.profile.exclusions>**/sia/**/*</project.profile.exclusions>
                <project.profile.test.exclusions>**/sia/**</project.profile.test.exclusions>
                <project.profile.execution>SIS</project.profile.execution>
            </properties>
            <build>
                <resources>
                    <resource>
                        <directory>src/main/resources-sis</directory>
                    </resource>
                </resources>
            </build>
        </profile>
        <!-- Fim Build Profile (Somente SIS) -->

        <!-- Inicio Build Profile (Full): ATENÇÃO: é necessário usar este profile para execução pelo IntelliJ -->
        <profile>
            <id>FULL</id>
            <build>
                <resources>
                    <resource>
                        <directory>src/main/resources/</directory>
                        <filtering>true</filtering>
                    </resource>
                </resources>
            </build>
        </profile>
        <!-- Fim Build Profile (Full) -->

        <profile>
            <id>virtual-host-SIA</id>
            <properties>
                <project.profile.selected>SIA</project.profile.selected>
                <project.profile.exclusions>**/sis/*</project.profile.exclusions>
                <project.profile.test.exclusions>**/sis/**</project.profile.test.exclusions>
                <project.profile.execution>SIA</project.profile.execution>
                <webmodule.context.path>/</webmodule.context.path>
                <webmodule.virtualhost><![CDATA[ <virtual-host>sincronizador</virtual-host> ]]></webmodule.virtualhost>
            </properties>
            <build>
                <finalName>${project.artifactId}-${project.version}-virtual-host-SIA</finalName>
                <resources>
                    <resource>
                        <directory>src/main/resources-sia</directory>
                        <filtering>true</filtering>
                    </resource>
                </resources>
            </build>
        </profile>

    </profiles>

</project>
