<?xml version='1.0' encoding='UTF-8'?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
   <modelVersion>4.0.0</modelVersion>
   <parent>
      <groupId>org.infinispan</groupId>
      <artifactId>infinispan-parent</artifactId>
      <version>9.0.2.Final</version>
      <relativePath>../parent/pom.xml</relativePath>
   </parent>
   <artifactId>infinispan-distribution</artifactId>
   <name>Infinispan Distribution</name>
   <packaging>pom</packaging>

   <dependencies>
      <dependency>
         <groupId>${project.groupId}</groupId>
         <artifactId>infinispan-embedded</artifactId>
      </dependency>

      <dependency>
         <groupId>${project.groupId}</groupId>
         <artifactId>infinispan-embedded-query</artifactId>
      </dependency>

      <dependency>
         <groupId>${project.groupId}</groupId>
         <artifactId>infinispan-remote</artifactId>
      </dependency>

      <dependency>
         <groupId>${project.groupId}</groupId>
         <artifactId>infinispan-cli</artifactId>
      </dependency>

      <dependency>
         <groupId>${project.groupId}</groupId>
         <artifactId>infinispan-cachestore-remote</artifactId>
      </dependency>

      <dependency>
         <groupId>${project.groupId}</groupId>
         <artifactId>infinispan-cachestore-rest</artifactId>
      </dependency>

      <dependency>
         <groupId>${project.groupId}</groupId>
         <artifactId>infinispan-server-core</artifactId>
      </dependency>

      <dependency>
         <groupId>${project.groupId}</groupId>
         <artifactId>infinispan-server-hotrod</artifactId>
      </dependency>

      <dependency>
         <groupId>${project.groupId}</groupId>
         <artifactId>infinispan-server-memcached</artifactId>
      </dependency>

      <dependency>
         <groupId>${project.groupId}</groupId>
         <artifactId>infinispan-server-rest</artifactId>
      </dependency>

      <dependency>
         <groupId>${project.groupId}</groupId>
         <artifactId>infinispan-server-websocket</artifactId>
      </dependency>

      <dependency>
         <groupId>${project.groupId}</groupId>
         <artifactId>infinispan-spring4-embedded</artifactId>
      </dependency>

      <dependency>
         <groupId>${project.groupId}</groupId>
         <artifactId>infinispan-spring4-remote</artifactId>
      </dependency>

      <dependency>
         <groupId>${project.groupId}</groupId>
         <artifactId>infinispan-tools</artifactId>
      </dependency>

      <dependency>
         <groupId>${project.groupId}</groupId>
         <artifactId>infinispan-tree</artifactId>
      </dependency>

      <dependency>
         <groupId>${project.groupId}</groupId>
         <artifactId>infinispan-extended-statistics</artifactId>
         <version>${project.version}</version>
      </dependency>

      <dependency>
         <groupId>${project.groupId}</groupId>
         <artifactId>infinispan-javadoc-embedded</artifactId>
         <version>${project.version}</version>
         <classifier>javadoc</classifier>
      </dependency>

      <dependency>
         <groupId>${project.groupId}</groupId>
         <artifactId>infinispan-javadoc-remote</artifactId>
         <version>${project.version}</version>
         <classifier>javadoc</classifier>
      </dependency>

      <dependency>
         <groupId>${project.groupId}</groupId>
         <artifactId>infinispan-javadoc-all</artifactId>
         <version>${project.version}</version>
         <classifier>javadoc</classifier>
      </dependency>

      <dependency>
         <groupId>javax.cache</groupId>
         <artifactId>cache-api</artifactId>
         <scope>provided</scope>
      </dependency>

      <dependency>
         <groupId>javax.enterprise</groupId>
         <artifactId>cdi-api</artifactId>
         <scope>provided</scope>
      </dependency>

   </dependencies>

   <build>
      <plugins>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-antrun-plugin</artifactId>
            <executions>
               <execution>
                  <id>xsdocgen</id>
                  <phase>package</phase>
                  <goals>
                     <goal>run</goal>
                  </goals>
                  <configuration>
                     <target>
                        <property name="plugin_classpath" refid="maven.plugin.classpath" />
                        <echo message="Base dir: ${basedir}" />
                        <path id="xsd.fileset.path">
                           <fileset casesensitive="yes" dir="${basedir}/..">
                              <include name="core/target/classes/schema/*-${infinispan.core.schema.version}.xsd" />
                              <include name="persistence/*/target/classes/schema/*-${infinispan.core.schema.version}.xsd" />
                              <include name="spring/spring/src/main/resources/org/infinispan/spring/config/*-${infinispan.core.schema.version}.xsd" />
                           </fileset>
                        </path>
                        <pathconvert pathsep=" " property="xsd.fileset" refid="xsd.fileset.path" />
                        <echo message="XSDs: ${xsd.fileset}" />
                        <java classname="org.infinispan.tools.xsd.XSDoc">
                           <arg value="-o" />
                           <arg value="${project.build.directory}/site/configdocs" />
                           <arg line="${xsd.fileset}" />
                           <classpath>
                              <pathelement path="${plugin_classpath}" />
                           </classpath>
                        </java>
                     </target>
                  </configuration>
               </execution>
               <execution>
                  <id>serverxsdocgen</id>
                  <phase>package</phase>
                  <goals>
                     <goal>run</goal>
                  </goals>
                  <configuration>
                     <target>
                        <property name="plugin_classpath" refid="maven.plugin.classpath" />
                        <echo message="Base dir: ${basedir}" />
                        <path id="xsd.fileset.path">
                           <fileset casesensitive="yes" dir="${basedir}/../server/integration/build/target/infinispan-server-${project.version}/docs/schema">
                              <include name="*.xsd" />
                           </fileset>
                        </path>
                        <pathconvert pathsep=" " property="xsd.fileset" refid="xsd.fileset.path" />
                        <echo message="XSDs: ${xsd.fileset}" />
                        <java classname="org.infinispan.tools.xsd.XSDoc">
                           <arg value="-o" />
                           <arg value="${project.build.directory}/site/serverconfigdocs" />
                           <arg line="${xsd.fileset}" />
                           <classpath>
                              <pathelement path="${plugin_classpath}" />
                           </classpath>
                        </java>
                     </target>
                  </configuration>
               </execution>
               <execution>
                  <id>distribution</id>
                  <phase>package</phase>
                  <goals>
                     <goal>run</goal>
                  </goals>
                  <configuration>
                     <target>
                        <ant antfile="package.xml" inheritRefs="true" />
                     </target>
                  </configuration>
               </execution>
            </executions>
            <dependencies>
               <dependency>
                  <groupId>org.infinispan</groupId>
                  <artifactId>infinispan-tools</artifactId>
                  <version>${project.version}</version>
               </dependency>
            </dependencies>
         </plugin>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-assembly-plugin</artifactId>
            <executions>
               <execution>
                  <id>assemble</id>
                  <phase>package</phase>
                  <goals>
                     <goal>single</goal>
                  </goals>
               </execution>
            </executions>
            <configuration>
               <descriptors>
                  <descriptor>src/main/assemblies/minimal.xml</descriptor>
                  <descriptor>src/main/assemblies/all.xml</descriptor>
                  <descriptor>src/main/assemblies/remote.xml</descriptor>
                  <descriptor>src/main/assemblies/src.xml</descriptor>
               </descriptors>
               <finalName>infinispan-${project.version}</finalName>
               <outputDirectory>${buildDirectory}/distribution</outputDirectory>
               <workDirectory>${buildDirectory}/assembly/work</workDirectory>


               <attach>false</attach>
            </configuration>
         </plugin>
      </plugins>
   </build>
</project>