<?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.clustered</groupId>
      <artifactId>broker-clustered</artifactId>
      <version>2.30.0</version>
   </parent>

   <artifactId>clustered-static-discovery</artifactId>
   <packaging>jar</packaging>
   <name>ActiveMQ Artemis JMS Clustered Static Discovery 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>org.apache.activemq</groupId>
         <artifactId>artemis-jms-client</artifactId>
         <version>${project.version}</version>
      </dependency>
   </dependencies>

   <build>
      <plugins>
         <plugin>
            <groupId>org.apache.activemq</groupId>
            <artifactId>artemis-maven-plugin</artifactId>
            <executions>
               <execution>
                  <id>create0</id>
                  <goals>
                     <goal>create</goal>
                  </goals>
                  <configuration>
                     <ignore>${noServer}</ignore>
                     <instance>${basedir}/target/server0</instance>
                     <configuration>${basedir}/target/classes/activemq/server0</configuration>
                     <!-- this makes it easier in certain envs -->
                     <javaOptions>-Djava.net.preferIPv4Stack=true</javaOptions>
                  </configuration>
               </execution>
               <execution>
                  <id>create1</id>
                  <goals>
                     <goal>create</goal>
                  </goals>
                  <configuration>
                     <ignore>${noServer}</ignore>
                     <instance>${basedir}/target/server1</instance>
                     <configuration>${basedir}/target/classes/activemq/server1</configuration>
                     <!-- this makes it easier in certain envs -->
                     <javaOptions>-Djava.net.preferIPv4Stack=true</javaOptions>
                  </configuration>
               </execution>
               <execution>
                  <id>create2</id>
                  <goals>
                     <goal>create</goal>
                  </goals>
                  <configuration>
                     <ignore>${noServer}</ignore>
                     <instance>${basedir}/target/server2</instance>
                     <configuration>${basedir}/target/classes/activemq/server2</configuration>
                     <!-- this makes it easier in certain envs -->
                     <javaOptions>-Djava.net.preferIPv4Stack=true</javaOptions>
                  </configuration>
               </execution>
               <execution>
                  <id>create3</id>
                  <goals>
                     <goal>create</goal>
                  </goals>
                  <configuration>
                     <ignore>${noServer}</ignore>
                     <instance>${basedir}/target/server3</instance>
                     <configuration>${basedir}/target/classes/activemq/server3</configuration>
                  </configuration>
               </execution>
               <execution>
                  <id>start0</id>
                  <goals>
                     <goal>cli</goal>
                  </goals>
                  <configuration>
                     <ignore>${noServer}</ignore>
                     <spawn>true</spawn>
                     <location>${basedir}/target/server0</location>
                     <testURI>tcp://localhost:61616</testURI>
                     <args>
                        <param>run</param>
                     </args>
                     <name>server0</name>
                  </configuration>
               </execution>
               <execution>
                  <id>start1</id>
                  <goals>
                     <goal>cli</goal>
                  </goals>
                  <configuration>
                     <spawn>true</spawn>
                     <ignore>${noServer}</ignore>
                     <location>${basedir}/target/server1</location>
                     <testURI>tcp://localhost:61617</testURI>
                     <args>
                        <param>run</param>
                     </args>
                     <name>server1</name>
                  </configuration>
               </execution>
               <execution>
                  <id>start2</id>
                  <goals>
                     <goal>cli</goal>
                  </goals>
                  <configuration>
                     <ignore>${noServer}</ignore>
                     <spawn>true</spawn>
                     <location>${basedir}/target/server2</location>
                     <testURI>tcp://localhost:61618</testURI>
                     <args>
                        <param>run</param>
                     </args>
                     <name>server2</name>
                  </configuration>
               </execution>
               <execution>
                  <id>start3</id>
                  <goals>
                     <goal>cli</goal>
                  </goals>
                  <configuration>
                     <ignore>${noServer}</ignore>
                     <spawn>true</spawn>
                     <location>${basedir}/target/server3</location>
                     <testURI>tcp://localhost:61619</testURI>
                     <args>
                        <param>run</param>
                     </args>
                     <name>server3</name>
                  </configuration>
               </execution>
               <execution>
                  <id>runClient</id>
                  <goals>
                     <goal>runClient</goal>
                  </goals>
                  <configuration>
                     <clientClass>org.apache.activemq.artemis.jms.example.StaticClusteredQueueExample</clientClass>
                  </configuration>
               </execution>
               <execution>
                  <id>stop0</id>
                  <goals>
                     <goal>cli</goal>
                  </goals>
                  <configuration>
                     <ignore>${noServer}</ignore>
                     <location>${basedir}/target/server0</location>
                     <args>
                        <param>stop</param>
                     </args>
                  </configuration>
               </execution>
               <execution>
                  <id>stop1</id>
                  <goals>
                     <goal>cli</goal>
                  </goals>
                  <configuration>
                     <ignore>${noServer}</ignore>
                     <location>${basedir}/target/server1</location>
                     <args>
                        <param>stop</param>
                     </args>
                  </configuration>
               </execution>
               <execution>
                  <id>stop2</id>
                  <goals>
                     <goal>cli</goal>
                  </goals>
                  <configuration>
                     <ignore>${noServer}</ignore>
                     <location>${basedir}/target/server2</location>
                     <args>
                        <param>stop</param>
                     </args>
                  </configuration>
               </execution>
               <execution>
                  <id>stop3</id>
                  <goals>
                     <goal>cli</goal>
                  </goals>
                  <configuration>
                     <ignore>${noServer}</ignore>
                     <location>${basedir}/target/server3</location>
                     <args>
                        <param>stop</param>
                     </args>
                  </configuration>
               </execution>
            </executions>
            <dependencies>
               <dependency>
                  <groupId>org.apache.activemq.examples.clustered</groupId>
                  <artifactId>clustered-static-discovery</artifactId>
                  <version>${project.version}</version>
               </dependency>
            </dependencies>
         </plugin>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-clean-plugin</artifactId>
         </plugin>
      </plugins>
   </build>
</project>