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

<!--
  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->

<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2
          http://maven.apache.org/xsd/assembly-1.1.2.xsd">
    <id>dependencies</id>

    <formats>
        <format>dir</format>
    </formats>

    <includeBaseDirectory>false</includeBaseDirectory>

    <moduleSets>
        <moduleSet>
            <includes>
                <include>org.apache.ignite:ignite-spark</include>
                <include>org.apache.ignite:ignite-spring</include>
                <include>org.apache.ignite:ignite-log4j</include>
                <include>org.apache.ignite:ignite-indexing</include>
            </includes>
            <sources>
                <includeModuleDirectory>true</includeModuleDirectory>
                <fileSets>
                    <fileSet>
                        <directory>${basedir}</directory>
                        <outputDirectory>/</outputDirectory>
                        <includes>
                            <include>README.txt</include>
                            <include>licenses/**</include>
                        </includes>
                    </fileSet>
                    <fileSet>
                        <directory>${basedir}/target/licenses</directory>
                        <outputDirectory>/licenses</outputDirectory>
                    </fileSet>
                    <fileSet>
                        <directory>target/libs</directory>
                        <outputDirectory>/</outputDirectory>
                        <excludes>
                            <exclude>hadoop*.jar</exclude>
                        </excludes>
                    </fileSet>
                    <fileSet>
                        <directory>target</directory>
                        <outputDirectory>/</outputDirectory>
                        <includes>
                            <include>*.jar</include>
                        </includes>
                        <excludes>
                            <exclude>*-tests.jar</exclude>
                            <exclude>*-javadoc.jar</exclude>
                            <exclude>*-sources.jar</exclude>
                        </excludes>
                    </fileSet>
                </fileSets>
            </sources>
        </moduleSet>

        <moduleSet>
            <includes>
                <include>org.apache.ignite:ignite-core</include>
            </includes>
            <sources>
                <includeModuleDirectory>false</includeModuleDirectory>
                <fileSets>
                    <fileSet>
                        <directory>${basedir}</directory>
                        <outputDirectory>/</outputDirectory>
                        <includes>
                            <include>licenses/**</include>
                        </includes>
                    </fileSet>
                    <fileSet>
                        <directory>${basedir}/target/licenses</directory>
                        <outputDirectory>/licenses</outputDirectory>
                    </fileSet>
                    <fileSet>
                        <directory>target/libs</directory>
                        <outputDirectory>/</outputDirectory>
                    </fileSet>
                    <fileSet>
                        <directory>target</directory>
                        <outputDirectory>/</outputDirectory>
                        <includes>
                            <include>*.jar</include>
                        </includes>
                        <excludes>
                            <exclude>*-tests.jar</exclude>
                            <exclude>*-javadoc.jar</exclude>
                            <exclude>*-sources.jar</exclude>
                        </excludes>
                    </fileSet>
                </fileSets>
            </sources>
        </moduleSet>

        <moduleSet>
            <includes>
                <include>org.apache.ignite:ignite-hadoop</include>
            </includes>
            <sources>
                <includeModuleDirectory>true</includeModuleDirectory>
                <fileSets>
                    <fileSet>
                        <directory>${basedir}</directory>
                        <outputDirectory>/</outputDirectory>
                        <includes>
                            <include>README.txt</include>
                            <include>licenses/**</include>
                        </includes>
                    </fileSet>
                    <fileSet>
                        <directory>${basedir}/target/licenses</directory>
                        <outputDirectory>/licenses</outputDirectory>
                    </fileSet>
                    <fileSet>
                        <directory>target/libs</directory>
                        <outputDirectory>/</outputDirectory>
                        <excludes>
                            <exclude>hadoop*.jar</exclude>
                            <exclude>log4j*.jar</exclude>
                        </excludes>
                    </fileSet>
                    <fileSet>
                        <directory>target</directory>
                        <outputDirectory>/</outputDirectory>
                        <includes>
                            <include>*.jar</include>
                        </includes>
                        <excludes>
                            <exclude>*-tests.jar</exclude>
                            <exclude>*-javadoc.jar</exclude>
                            <exclude>*-sources.jar</exclude>
                        </excludes>
                    </fileSet>
                </fileSets>
            </sources>
        </moduleSet>
    </moduleSets>

    <fileSets>
        <fileSet>
            <directory>modules/core/licenses</directory>
            <outputDirectory>/licenses</outputDirectory>
        </fileSet>
    </fileSets>
</assembly>
