<?xml version='1.0'?>
<!--
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.examples.openwire</groupId>
      <artifactId>openwire-examples</artifactId>
      <version>2.30.0</version>
   </parent>

   <artifactId>chat-example</artifactId>
   <packaging>jar</packaging>
   <name>ActiveMQ Artemis Openwire chat Example</name>

   <properties>
      <activemq.basedir>${project.basedir}/../../../..</activemq.basedir>
   </properties>

   <dependencies>
      <dependency>
         <groupId>org.apache.activemq</groupId>
         <artifactId>artemis-cli</artifactId>
         <version>${project.version}</version>
      </dependency>
      <dependency>
         <groupId>jakarta.jms</groupId>
         <artifactId>jakarta.jms-api</artifactId>
         <version>${jakarta.jms-api.version}</version>
      </dependency>
      <dependency>
         <groupId>jakarta.management.j2ee</groupId>
         <artifactId>jakarta.management.j2ee-api</artifactId>
         <version>${jakarta.management.j2ee-api.version}</version>
      </dependency>
      <dependency>
         <groupId>org.apache.activemq</groupId>
         <artifactId>activemq-client</artifactId>
         <exclusions>
            <exclusion>
               <groupId>org.apache.geronimo.specs</groupId>
               <artifactId>geronimo-jms_1.1_spec</artifactId>
            </exclusion>
            <exclusion>
               <groupId>org.apache.geronimo.specs</groupId>
               <artifactId>geronimo-j2ee-management_1.1_spec</artifactId>
            </exclusion>
         </exclusions>
      </dependency>
      <dependency>
         <groupId>org.slf4j</groupId>
         <artifactId>slf4j-nop</artifactId>
      </dependency>
   </dependencies>

   <build>
      <plugins>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-clean-plugin</artifactId>
         </plugin>
      </plugins>
   </build>

   <profiles>
      <profile>
         <id>server</id>
         <build>
            <plugins>
               <plugin>
                  <groupId>org.apache.activemq</groupId>
                  <artifactId>artemis-maven-plugin</artifactId>
                  <executions>
                     <execution>
                        <id>create</id>
                        <goals>
                           <goal>create</goal>
                        </goals>
                     </execution>
                     <execution>
                        <id>runClient</id>
                        <goals>
                           <goal>runClient</goal>
                        </goals>
                        <configuration>
                           <clientClass>org.apache.activemq.artemis.openwire.example.Server</clientClass>
                           <args>
                              <param>${basedir}/target/server0</param>
                           </args>
                        </configuration>
                     </execution>
                  </executions>
                  <dependencies>
                     <dependency>
                        <groupId>org.apache.activemq.examples.openwire</groupId>
                        <artifactId>chat-example</artifactId>
                        <version>${project.version}</version>
                     </dependency>
                  </dependencies>
               </plugin>
            </plugins>
         </build>
      </profile>
      <profile>
         <id>chat1</id>
         <build>
            <plugins>
               <plugin>
                  <groupId>org.apache.activemq</groupId>
                  <artifactId>artemis-maven-plugin</artifactId>
                  <executions>
                     <execution>
                        <id>runClient</id>
                        <goals>
                           <goal>runClient</goal>
                        </goals>
                        <configuration>
                           <clientClass>org.apache.activemq.artemis.openwire.example.Chat</clientClass>
                           <args>
                              <param>-u</param>
                              <param>Chatter1</param>
                           </args>
                        </configuration>
                     </execution>
                  </executions>
                  <dependencies>
                     <dependency>
                        <groupId>org.apache.activemq.examples.openwire</groupId>
                        <artifactId>chat-example</artifactId>
                        <version>${project.version}</version>
                     </dependency>
                  </dependencies>
               </plugin>
            </plugins>
         </build>
      </profile>
      <profile>
         <id>chat2</id>
         <build>
            <plugins>
               <plugin>
                  <groupId>org.apache.activemq</groupId>
                  <artifactId>artemis-maven-plugin</artifactId>
                  <executions>
                     <execution>
                        <id>runClient</id>
                        <goals>
                           <goal>runClient</goal>
                        </goals>
                        <configuration>
                           <clientClass>org.apache.activemq.artemis.openwire.example.Chat</clientClass>
                           <args>
                              <param>-u</param>
                              <param>Chatter2</param>
                           </args>
                        </configuration>
                     </execution>
                  </executions>
                  <dependencies>
                     <dependency>
                        <groupId>org.apache.activemq.examples.openwire</groupId>
                        <artifactId>chat-example</artifactId>
                        <version>${project.version}</version>
                     </dependency>
                  </dependencies>
               </plugin>
            </plugins>
         </build>
      </profile>
      <profile>
         <id>chat3</id>
         <build>
            <plugins>
               <plugin>
                  <groupId>org.apache.activemq</groupId>
                  <artifactId>artemis-maven-plugin</artifactId>
                  <executions>
                     <execution>
                        <id>runClient</id>
                        <goals>
                           <goal>runClient</goal>
                        </goals>
                        <configuration>
                           <clientClass>org.apache.activemq.artemis.openwire.example.Chat</clientClass>
                           <args>
                              <param>-u</param>
                              <param>Chatter3</param>
                           </args>
                        </configuration>
                     </execution>
                  </executions>
                  <dependencies>
                     <dependency>
                        <groupId>org.apache.activemq.examples.openwire</groupId>
                        <artifactId>chat-example</artifactId>
                        <version>${project.version}</version>
                     </dependency>
                  </dependencies>
               </plugin>
            </plugins>
         </build>
      </profile>
   </profiles>

</project>
