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

  This file is part of the Meeds project (https://meeds.io/).

  Copyright (C) 2022 Meeds Association contact@meeds.io

  This program is free software; you can redistribute it and/or
  modify it under the terms of the GNU Lesser General Public
  License as published by the Free Software Foundation; either
  version 3 of the License, or (at your option) any later version.
  This program is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  Lesser General Public License for more details.
  You should have received a copy of the GNU Lesser General Public License
  along with this program; if not, write to the Free Software Foundation,
  Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.

-->
<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/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <artifactId>social-extension</artifactId>
    <groupId>org.exoplatform.social</groupId>
    <version>7.0.0-exo-M22</version>
  </parent>
  <artifactId>social-extension-war</artifactId>
  <packaging>war</packaging>
  <name>eXo PLF:: Social Extension WAR</name>
  <description>eXo Social Extension WAR</description>
  <dependencies>
    <!-- Portal and Core dependencies -->
    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.api</artifactId>
      <exclusions>
        <exclusion>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-logging</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.slf4j</groupId>
          <artifactId>*</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.apache.logging.log4j</groupId>
          <artifactId>*</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.apache.tomcat.embed</groupId>
          <artifactId>*</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.api</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.common</artifactId>
    </dependency>
    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.common</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.file-storage</artifactId>
    </dependency>
    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.file-storage</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.resources</artifactId>
    </dependency>
    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.resources</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.identity</artifactId>
    </dependency>
    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.identity</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.pc</artifactId>
    </dependency>
    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.pc</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.portal</artifactId>
    </dependency>
    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.portal</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.scripting</artifactId>
    </dependency>
    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.scripting</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.web.controller</artifactId>
    </dependency>
    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.web.controller</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.web.security</artifactId>
    </dependency>
    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.web.security</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.web.server</artifactId>
    </dependency>
    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.web.server</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.web.api</artifactId>
    </dependency>
    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.web.api</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.web.resources</artifactId>
    </dependency>
    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.web.resources</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.webui.portal</artifactId>
    </dependency>
    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.webui.portal</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.management</artifactId>
    </dependency>
    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.management</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <!-- Commons dependencies -->
    <dependency>
      <groupId>org.exoplatform.commons</groupId>
      <artifactId>commons-api</artifactId>
    </dependency>
    <dependency>
      <groupId>org.exoplatform.commons</groupId>
      <artifactId>commons-api</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.exoplatform.commons</groupId>
      <artifactId>commons-component-common</artifactId>
    </dependency>
    <dependency>
      <groupId>org.exoplatform.commons</groupId>
      <artifactId>commons-component-common</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.exoplatform.commons</groupId>
      <artifactId>commons-component-product</artifactId>
    </dependency>
    <dependency>
      <groupId>org.exoplatform.commons</groupId>
      <artifactId>commons-component-product</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.exoplatform.commons</groupId>
      <artifactId>commons-component-upgrade</artifactId>
    </dependency>
    <dependency>
      <groupId>org.exoplatform.commons</groupId>
      <artifactId>commons-component-upgrade</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.exoplatform.commons</groupId>
      <artifactId>commons-search</artifactId>
    </dependency>
    <dependency>
      <groupId>org.exoplatform.commons</groupId>
      <artifactId>commons-search</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.exoplatform.commons</groupId>
      <artifactId>commons-comet-service</artifactId>
    </dependency>
    <dependency>
      <groupId>org.exoplatform.commons</groupId>
      <artifactId>commons-comet-service</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <!-- Social dependencies -->
    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>social-component-api</artifactId>
    </dependency>
    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>social-component-api</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>social-component-common</artifactId>
    </dependency>
    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>social-component-common</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>social-component-core</artifactId>
    </dependency>
    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>social-component-core</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>social-component-service</artifactId>
    </dependency>
    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>social-component-service</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>social-component-notification</artifactId>
    </dependency>
    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>social-component-notification</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>social-component-oauth-auth</artifactId>
    </dependency>
    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>social-component-oauth-auth</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>social-component-web</artifactId>
    </dependency>
    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>social-component-web</artifactId>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>

    <!-- Needed for cache management in runtime -->
    <dependency>
      <groupId>org.exoplatform.kernel</groupId>
      <artifactId>exo.kernel.component.ext.cache.impl.infinispan.v8</artifactId>
    </dependency>

    <!-- Transitive dependencies to exclude -->
    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.test.core</artifactId>
      <scope>test</scope>
      <!-- Exclude Test artifacts from packaging -->
    </dependency>
    <dependency>
      <groupId>org.exoplatform.gatein.portal</groupId>
      <artifactId>exo.portal.component.test.web</artifactId>
      <scope>test</scope>
      <!-- Exclude Test artifacts from packaging -->
    </dependency>
    <dependency>
      <groupId>org.exoplatform.commons</groupId>
      <artifactId>commons-testing</artifactId>
      <scope>test</scope>
      <!-- Exclude Test artifacts from packaging -->
    </dependency>

    <dependency>
      <groupId>jakarta.servlet</groupId>
      <artifactId>jakarta.servlet-api</artifactId>
      <!-- Used for compilation only, thus exclude it from packaging
                  (already packaged in Web container, Tomcat Server) -->
      <scope>test</scope>
    </dependency>
    <!-- Swagger -->
    <dependency>
      <groupId>io.swagger.core.v3</groupId>
      <artifactId>swagger-annotations-jakarta</artifactId>
      <scope>test</scope>
      <!-- Used for compilation only, thus exclude it from packaging -->
    </dependency>
    <dependency>
      <groupId>org.projectlombok</groupId>
      <artifactId>lombok</artifactId>
      <scope>test</scope>
      <!-- Used for compilation only, thus exclude it from packaging -->
    </dependency>
  </dependencies>
  <build>
    <finalName>social-extension</finalName>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-war-plugin</artifactId>
        <configuration>
          <includeEmptyDirectories>false</includeEmptyDirectories>
          <packagingExcludes>WEB-INF/lib/*.jar</packagingExcludes>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>
