<?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. -->
<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>
    <groupId>org.apache.activemq</groupId>
    <artifactId>activemq-parent</artifactId>
    <version>5.18.0-SNAPSHOT</version>
  </parent>

  <artifactId>activemq-all</artifactId>
  <packaging>jar</packaging>
  <name>ActiveMQ :: All JAR bundle</name>
  <description>Puts together an ActiveMQ jar bundle</description>

  <dependencies>

    <!-- activemq -->
    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>activemq-console</artifactId>
    </dependency>
    <!-- Transports -->
    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>activemq-stomp</artifactId>
    </dependency>
    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>activemq-amqp</artifactId>
    </dependency>
    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>activemq-mqtt</artifactId>
    </dependency>
    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>activemq-http</artifactId>
    </dependency>
    <!-- Stores -->
    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>activemq-kahadb-store</artifactId>
    </dependency>
    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>activemq-jdbc-store</artifactId>
    </dependency>
    <dependency>
      <groupId>org.apache.geronimo.specs</groupId>
      <artifactId>geronimo-annotation_1.3_spec</artifactId>
    </dependency>
    <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-slf4j-impl</artifactId>
    </dependency>
  </dependencies>

  <build>

    <plugins>

      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-shade-plugin</artifactId>
        <version>${maven-shade-plugin-version}</version>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>shade</goal>
            </goals>
            <configuration>
              <artifactSet>
                <includes>
                  <include>${project.groupId}:activemq-client</include>
                  <include>${project.groupId}:activemq-openwire-legacy</include>
                  <include>${project.groupId}:activemq-jaas</include>
                  <include>${project.groupId}:activemq-broker</include>
                  <include>${project.groupId}:activemq-console</include>
                  <include>${project.groupId}:activemq-shiro</include>
                  <include>${project.groupId}:activemq-spring</include>
                  <include>${project.groupId}:activemq-pool</include>
                  <include>${project.groupId}:activemq-jms-pool</include>
                  <include>${project.groupId}:activemq-amqp</include>
                  <include>${project.groupId}:activemq-http</include>
                  <include>${project.groupId}:activemq-mqtt</include>
                  <include>${project.groupId}:activemq-stomp</include>
                  <include>${project.groupId}:activemq-kahadb-store</include>
                  <include>${project.groupId}:activemq-jdbc-store</include>
                  <include>org.apache.activemq.protobuf:activemq-protobuf</include>
                  <include>org.fusesource.hawtbuf:hawtbuf</include>
                  <include>org.jasypt:jasypt</include>
                  <include>jakarta.jms:jakarta.jms-api</include>
                  <include>org.apache.geronimo.specs:geronimo-jta_1.1_spec</include>
                  <include>org.apache.geronimo.specs:geronimo-j2ee-management_1.1_spec</include>
                  <include>org.apache.geronimo.specs:geronimo-annotation_1.3_spec</include>
                  <include>org.slf4j:slf4j-api</include>
                  <include>org.apache.logging.log4j:log4j-slf4j-impl</include>
                  <include>org.slf4j:jcl-over-slf4j</include>
                  <include>org.springframework:spring-core</include>
                  <include>org.springframework:spring-beans</include>
                  <include>org.springframework:spring-context</include>
                  <include>org.springframework:spring-expression</include>
                  <include>org.springframework:spring-jms</include>
                  <include>org.springframework:spring-messaging</include>
                  <include>org.springframework:spring-tx</include>
                  <include>org.apache.xbean:xbean-spring</include>
                  <include>org.apache.camel:camel-jms</include>
                  <include>org.apache.camel:camel-core</include>
                  <include>org.apache.camel:camel-spring</include>
                  <include>com.sun.xml.bind:jaxb-core</include>
                  <include>com.sun.xml.bind:jaxb-impl</include>
                </includes>
              </artifactSet>

              <transformers>
                <transformer implementation="org.apache.maven.plugins.shade.resource.DontIncludeResourceTransformer">
                    <resource>.java</resource>
                </transformer>

                <transformer implementation="org.apache.maven.plugins.shade.resource.ApacheNoticeResourceTransformer">
                  <projectName>Apache ActiveMQ</projectName>
                </transformer>

                <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
                  <resource>META-INF/spring.handlers</resource>
                </transformer>

                <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
                  <resource>META-INF/services/com.sun.tools.xjc.Plugin</resource>
                </transformer>

                <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
                  <resource>META-INF/spring.schemas</resource>
                </transformer>

                <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                    <mainClass>org.apache.activemq.console.command.ShellCommand</mainClass>
                </transformer>

              </transformers>
            </configuration>
          </execution>
        </executions>
      </plugin>

    </plugins>
  </build>

  <profiles>
    <profile>
      <id>deploy</id>
      <build>
        <defaultGoal>deploy</defaultGoal>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-source-plugin</artifactId>
            <version>${maven-source-plugin-version}</version>
            <configuration>
              <attach>false</attach>
            </configuration>
            <executions>
              <execution>
                <id>attach-sources</id>
                <goals>
                  <goal>jar</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>apache-release</id>

      <dependencies>

        <dependency>
          <groupId>${project.groupId}</groupId>
          <artifactId>activemq-client</artifactId>
          <version>${project.version}</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>${project.groupId}</groupId>
          <artifactId>activemq-openwire-legacy</artifactId>
          <version>${project.version}</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>${project.groupId}</groupId>
          <artifactId>activemq-jaas</artifactId>
          <version>${project.version}</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>${project.groupId}</groupId>
          <artifactId>activemq-broker</artifactId>
          <version>${project.version}</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>${project.groupId}</groupId>
          <artifactId>activemq-console</artifactId>
          <version>${project.version}</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>${project.groupId}</groupId>
          <artifactId>activemq-shiro</artifactId>
          <version>${project.version}</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>${project.groupId}</groupId>
          <artifactId>activemq-spring</artifactId>
          <version>${project.version}</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>${project.groupId}</groupId>
          <artifactId>activemq-pool</artifactId>
          <version>${project.version}</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>${project.groupId}</groupId>
          <artifactId>activemq-jms-pool</artifactId>
          <version>${project.version}</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>${project.groupId}</groupId>
          <artifactId>activemq-amqp</artifactId>
          <version>${project.version}</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>${project.groupId}</groupId>
          <artifactId>activemq-http</artifactId>
          <version>${project.version}</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>${project.groupId}</groupId>
          <artifactId>activemq-mqtt</artifactId>
          <version>${project.version}</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>${project.groupId}</groupId>
          <artifactId>activemq-stomp</artifactId>
          <version>${project.version}</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>${project.groupId}</groupId>
          <artifactId>activemq-kahadb-store</artifactId>
          <version>${project.version}</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>${project.groupId}</groupId>
          <artifactId>activemq-jdbc-store</artifactId>
          <version>${project.version}</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>org.apache.activemq.protobuf</groupId>
          <artifactId>activemq-protobuf</artifactId>
          <version>${activemq-protobuf-version}</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>org.fusesource.hawtbuf</groupId>
          <artifactId>hawtbuf</artifactId>
          <version>${hawtbuf-version}</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>org.jasypt</groupId>
          <artifactId>jasypt</artifactId>
          <version>${jasypt-version}</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>jakarta.jms</groupId>
          <artifactId>jakarta.jms-api</artifactId>
          <version>2.0.3</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>org.apache.geronimo.specs</groupId>
          <artifactId>geronimo-j2ee-management_1.1_spec</artifactId>
          <version>1.0.1</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>org.apache.geronimo.specs</groupId>
          <artifactId>geronimo-annotation_1.3_spec</artifactId>
          <version>1.0</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>org.slf4j</groupId>
          <artifactId>slf4j-api</artifactId>
          <version>${slf4j-version}</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>org.apache.logging.log4j</groupId>
          <artifactId>log4j-slf4j-impl</artifactId>
          <version>${log4j-version}</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>org.apache.logging.log4j</groupId>
          <artifactId>log4j-api</artifactId>
          <version>${log4j-version}</version>
          <classifier>sources</classifier>
          <optional>true</optional>
        </dependency>
      </dependencies>

      <build>
        <plugins>
          <plugin>
            <artifactId>maven-source-plugin</artifactId>
            <configuration>
              <skipSource>true</skipSource>
            </configuration>
          </plugin>
          <plugin>
            <artifactId>maven-assembly-plugin</artifactId>
            <executions>
              <execution>
                <id>uber-sources-jar</id>
                <phase>package</phase>
                <goals>
                  <goal>single</goal>
                </goals>
                <configuration>
                  <descriptors>
                    <descriptor>${basedir}/src/main/descriptors/uber-sources.xml</descriptor>
                  </descriptors>
                  <appendAssemblyId>true</appendAssemblyId>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>

</project>
