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

    Copyright (C) 2010-2011, FuseSource Corp.  All rights reserved.

        http://fusesource.com

    The software in this package is published under the terms of the
    CDDL license a copy of which has been included with this distribution
    in the license.txt file.

-->
<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>
  <groupId>io.hyte.stompjms</groupId>
  <artifactId>stompjms-project</artifactId>
  <version>3.1.0</version>
  <packaging>pom</packaging>
  
  <name>${project.artifactId}</name>
  <description>
      STOMP-JMS is a JMS implementation using STOMP as the wire protocol
  </description>
  
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <junit-version>4.7</junit-version>
    <slf4j-version>1.7.36</slf4j-version>
    <hawtbuf-version>1.11</hawtbuf-version>
    <hawtdispatch-version>1.20</hawtdispatch-version>
    <apollo-version>1.6</apollo-version>
    <activemq-version>5.16.4</activemq-version>
    <mvnplugins-version>1.15</mvnplugins-version>
    <mockito.version>1.9.5</mockito.version>
    <xstream.version>1.4.20</xstream.version>
  </properties>
  
  <url>https://github.com/hyteio/stompjms/</url>
  <inceptionYear>2023</inceptionYear>
  
  <issueManagement>
    <system>github</system>
    <url>https://github.com/hyteio/stompjms/issues</url>
  </issueManagement>
  
  <licenses>
    <license>
      <name>Common Development and Distribution License (CDDL)</name>
      <url>http://www.opensource.org/licenses/cddl1</url>
      <distribution>repo</distribution>
    </license>
  </licenses>
  
  <scm>
    <connection>scm:git:https://github.com/hyteio/stompjms.git</connection>
    <url>https://github.com/hyteio/stompjms</url>
    <tag>v3.1.0</tag>
  </scm>

  <distributionManagement>
    <snapshotRepository>
      <id>ossrh</id>
      <url>https://oss.sonatype.org/content/repositories/snapshots</url>
    </snapshotRepository>
    <repository>
      <id>ossrh</id>
      <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
    </repository>
    <site>
      <id>website.fusesource.org</id>
      <name>website</name>
      <url>dav:http://fusesource.com/forge/dav/${forge-project-id}/maven/${project.version}</url>
    </site>
  </distributionManagement>

  <developers>
    <developer>
      <id>rajdavies</id>
      <name>Rob Davies</name>
      <email>rob@fusesource.com</email>
      <url>http://rajdavies.blogspot.com/</url>
      <timezone>GMT</timezone>
    </developer>
    <developer>
      <id>chirino</id>
      <name>Hiram Chirino</name>
      <email>hiram@hiramchirino.com</email>
      <url>http://hiramchirino.com</url>
      <timezone>GMT-5</timezone>
    </developer>
    <!-- HYTE fork to support JMS 2, Jakarta 3 -->
    <developer>
      <id>mattrpav</id>
      <name>Matt Pavlovich</name>
      <email>matt@hyte.io</email>
      <url>https://hyte.io/</url>
      <timezone>CST</timezone>
    </developer>
  </developers>
  
  <build>
    <defaultGoal>install</defaultGoal>
    <pluginManagement>
  <plugins>
    <!-- set versions of common plugins for reproducibility, ordered alphabetically -->
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-antrun-plugin</artifactId>
      <version>3.1.0</version>
    </plugin>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-assembly-plugin</artifactId>
      <version>3.4.2</version>
    </plugin>
    <plugin>
      <groupId>org.apache.felix</groupId>
      <artifactId>maven-bundle-plugin</artifactId>
      <version>5.1.9</version>
    </plugin>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-clean-plugin</artifactId>
      <version>3.3.1</version>
    </plugin>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-compiler-plugin</artifactId>
      <version>3.10.1</version>
      <configuration>
        <source>8</source>
        <target>8</target>
        <encoding>${project.build.sourceEncoding}</encoding>
      </configuration>
    </plugin>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-dependency-plugin</artifactId>
      <version>3.6.0</version>
    </plugin>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-deploy-plugin</artifactId>
      <version>3.1.1</version>
    </plugin>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-docck-plugin</artifactId>
      <version>1.1</version>
    </plugin>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-enforcer-plugin</artifactId>
      <version>3.2.1</version>
    </plugin>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-gpg-plugin</artifactId>
      <version>3.1.0</version>
    </plugin>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-install-plugin</artifactId>
      <version>3.1.1</version>
    </plugin>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-invoker-plugin</artifactId>
      <version>3.6.0</version>
    </plugin>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-jar-plugin</artifactId>
      <version>3.3.0</version>
      <configuration>
        <archive>
          <manifest>
            <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
            <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
          </manifest>
        </archive>
      </configuration>
    </plugin>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-javadoc-plugin</artifactId>
      <version>3.4.1</version>
    </plugin>
    <plugin>
      <groupId>com.mycila.maven-license-plugin</groupId>
      <artifactId>maven-license-plugin</artifactId>
      <version>1.9.0</version>
    </plugin>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-plugin-plugin</artifactId>
      <version>3.7.1</version>
    </plugin>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-remote-resources-plugin</artifactId>
      <version>3.1.0</version>
    </plugin>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-resources-plugin</artifactId>
      <version>3.3.1</version>
      <configuration>
        <encoding>${project.build.sourceEncoding}</encoding>
      </configuration>
    </plugin>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-site-plugin</artifactId>
      <version>3.12.1</version>
    </plugin>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-source-plugin</artifactId>
      <version>3.2.1</version>
    </plugin>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-surefire-plugin</artifactId>
      <version>3.0.0-M8</version>
    </plugin>
    <plugin>
      <groupId>org.codehaus.mojo</groupId>
      <artifactId>clirr-maven-plugin</artifactId>
      <version>2.8</version>
    </plugin>
    <plugin>
      <groupId>org.codehaus.plexus</groupId>
      <artifactId>plexus-maven-plugin</artifactId>
      <version>1.3.8</version>
    </plugin>
    <plugin>
      <groupId>org.codehaus.modello</groupId>
      <artifactId>modello-maven-plugin</artifactId>
      <version>2.1.2</version>
    </plugin>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-release-plugin</artifactId>
      <version>3.0.0-M7</version>
      <configuration>
        <pushChanges>true</pushChanges>
        <localCheckout>true</localCheckout>
        <autoVersionSubmodules>true</autoVersionSubmodules>
        <allowTimestampedSnapshots>false</allowTimestampedSnapshots>
        <preparationGoals>clean install</preparationGoals>
        <tagNameFormat>v@{project.version}</tagNameFormat>
        <goals>deploy</goals>
      </configuration>
    </plugin>
    <plugin>
      <groupId>org.codehaus.mojo</groupId>
      <artifactId>build-helper-maven-plugin</artifactId>
      <version>3.2.0</version>
    </plugin>
    <plugin>
      <groupId>org.sonatype.plugins</groupId>
      <artifactId>nexus-staging-maven-plugin</artifactId>
      <version>1.6.13</version>
    </plugin>
  </plugins>
</pluginManagement>
    <plugins>
      <plugin>
        <groupId>org.apache.felix</groupId>
        <artifactId>maven-bundle-plugin</artifactId>
        <extensions>true</extensions>
        <configuration>
          <instructions>
            <Bundle-Name>${project.artifactId}</Bundle-Name>
            <Bundle-SymbolicName>${project.groupId}.${project.artifactId}</Bundle-SymbolicName>
            <Export-Package>org.fusesource.stomp.*</Export-Package>
            <Implementation-Title>${project.name}</Implementation-Title>
            <Implementation-Version>${project.version}</Implementation-Version>
          </instructions>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <configuration>
          <redirectTestOutputToFile>true</redirectTestOutputToFile>
          <failIfNoTests>false</failIfNoTests>
          <workingDirectory>${project.build.directory}</workingDirectory>
          <includes>
            <include>**/*Test.java</include>
          </includes>
          <excludes>
            <!-- <exclude>**/**</exclude> -->
          </excludes>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
          <source>8</source>
          <target>8</target>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-idea-plugin</artifactId>
        <version>2.2.1</version>
        <configuration>
          <downloadSources>true</downloadSources>
          <downloadJavadocs>true</downloadJavadocs>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-eclipse-plugin</artifactId>
        <version>2.10</version>
        <configuration>
          <downloadSources>true</downloadSources>
          <downloadJavadocs>true</downloadJavadocs>
        </configuration>
      </plugin>
    </plugins>
  </build>

  <profiles>
    <!--
        Enables a couple repositories that may be needed if some dependencies have not been replicated
        to maven central yet.
      -->
    <profile>
      <id>download</id>
      <repositories>
        <repository>
          <id>Fusesource Snapshots</id>
          <url>http://repo.fusesource.com/nexus/content/repositories/snapshots</url>
        </repository>
        <repository>
          <id>java.net.m2</id>
          <url>http://download.java.net/maven/2</url>
          <releases><enabled>true</enabled></releases>
          <snapshots><enabled>false</enabled></snapshots>
        </repository>
        <!-- <repository>
          <id>glassfish-repo-archive</id>
          <url>http://maven.glassfish.org/content/groups/glassfish</url>
          <releases><enabled>true</enabled></releases>
          <snapshots><enabled>false</enabled></snapshots>
        </repository> -->
      </repositories>
    </profile>
    
    <!-- 
        Do a license check by running       : mvn -P license license:check  
        UPdate the license check by running : mvn -P license license:format  
      -->
    <profile>
      <id>license</id>
      <build>
        <plugins>
          <plugin>
            <groupId>com.mycila.maven-license-plugin</groupId>
            <artifactId>maven-license-plugin</artifactId>
            <configuration>
              <quiet>false</quiet>
              <header>src/main/resources/license-header.txt</header>
              <aggregate>true</aggregate>
              <includes>
                  <include>src/**</include>
                  <include>**/pom.xml</include>
              </includes>
              <excludes>
                <!-- can remove once http://code.google.com/p/maven-license-plugin/issues/detail?id=72 is resolved -->
                <exclude>**/*.scaml</exclude>
                <exclude>**/LICENSE.txt</exclude>
                <exclude>**/LICENSE</exclude>
                <exclude>**/.svn/**</exclude>
            
                <!-- ignore files produced during a build -->
                <exclude>**/target/**</exclude>
            
                <!-- ignore binary files -->
                <exclude>**/*.jpg</exclude>
                <exclude>**/*.png</exclude>
                <exclude>**/*.gif</exclude>
                <exclude>**/*.ico</exclude>
                <exclude>**/*.keystore</exclude>

              </excludes>
              <useDefaultExcludes>false</useDefaultExcludes>
              <mapping>
                  <jj>JAVADOC_STYLE</jj>
                  <proto>DOUBLESLASH_STYLE</proto>
                  <index>SCRIPT_STYLE</index>
              </mapping>
            </configuration>
            <executions>
              <execution>
                <goals>
                  <goal>check</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>release</id>
      <build>
        <plugins>
                    <plugin>
                        <artifactId>maven-deploy-plugin</artifactId>
                        <configuration>
                            <skip>false</skip>
                        </configuration>
                    </plugin>
                    <plugin>
                        <groupId>org.codehaus.mojo</groupId>
                        <artifactId>build-helper-maven-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>attach-assemblies</id>
                                <phase>none</phase>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <artifactId>maven-gpg-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>sign-artifacts</id>
                                <phase>verify</phase>
                                <goals>
                                    <goal>sign</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <artifactId>maven-javadoc-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>attach-javadocs</id>
                                <goals>
                                    <goal>jar</goal>
                                </goals>
                            </execution>
                        </executions>
                        <configuration>
                            <additionalJOption>-Xdoclint:none</additionalJOption>
                        </configuration>
                    </plugin>
                    <plugin>
                        <artifactId>maven-source-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>attach-sources</id>
                                <goals>
                                    <goal>jar-no-fork</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <groupId>org.sonatype.plugins</groupId>
                        <artifactId>nexus-staging-maven-plugin</artifactId>
                        <version>1.6.13</version>
                        <extensions>true</extensions>
                        <configuration>
                            <serverId>oss-sonatype-staging</serverId>
                            <nexusUrl>https://oss.sonatype.org/</nexusUrl>
                            <autoReleaseAfterClose>false</autoReleaseAfterClose>
                            <stagingProgressTimeoutMinutes>30</stagingProgressTimeoutMinutes>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
  </profiles>

  <modules>
    <module>stompjms-client</module>
    <!-- module>stompjms-website</module -->
    <!-- Pending ActiveMQ 5.19.x release
    <module>stompjms-activemq-test</module>
    -->
  </modules>
    
</project>
