<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
    <parent>
        <groupId>org.sonatype.oss</groupId>
        <artifactId>oss-parent</artifactId>
        <version>5</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.wordnik</groupId>
    <artifactId>swaggersocket-project</artifactId>
    <name>swaggersocket-project</name>
    <version>2.0.1</version>
    <packaging>pom</packaging>
    <description>
    </description>
    <url>https://github.com/swagger-api/swagger-socket</url>
    <scm>
        <connection>scm:git:git@github.com:swagger-api/swagger-socket.git</connection>

        <url>https://github.com/swagger-api/swagger-socket</url>
        <developerConnection>scm:git:git@github.com:swagger-api/swagger-socket.git</developerConnection>
    </scm>
    <issueManagement>
        <system>github</system>
        <url>https://github.com/swagger-api/swagger-socket/issues</url>
    </issueManagement>

    <prerequisites>
        <maven>2.0.9</maven>
    </prerequisites>
    <developers>
        <developer>
            <id>jfarcand</id>
            <name>Jeanfrancois Arcand</name>
            <email>jfarcand@apache.org</email>
        </developer>
        <developer>
            <id>fehguy</id>
            <name>Tony Tam</name>
            <email>fehguy@gmail.com</email>
        </developer>
    </developers>
    <licenses>
        <license>
            <name>Apache License 2.0</name>
            <url>http://www.apache.org/licenses/LICENSE-2.0.html</url>
            <distribution>repo</distribution>
        </license>
    </licenses>
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.apache.felix</groupId>
                <artifactId>maven-bundle-plugin</artifactId>
                <version>${maven-bundle-plugin-version}</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-ext</artifactId>
                <version>${slf4j-version}</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-api</artifactId>
                <version>${slf4j-version}</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-log4j12</artifactId>
                <version>${slf4j-version}</version>
            </dependency>

            <dependency>
                <groupId>com.wordnik</groupId>
                <artifactId>swaggersocket-server</artifactId>
                <version>${project.version}</version>
            </dependency>

            <dependency>
                <groupId>com.wordnik</groupId>
                <artifactId>swaggersocket.js</artifactId>
                <version>${project.version}</version>
            </dependency>

            <dependency>
                <groupId>com.wordnik</groupId>
                <artifactId>swaggersocket-scala-client</artifactId>
                <version>${project.version}</version>
            </dependency>

            <dependency>
                <groupId>com.wordnik</groupId>
                <artifactId>swaggersocket-protocol</artifactId>
                <version>${project.version}</version>
            </dependency>

            <dependency>
                <groupId>org.atmosphere</groupId>
                <artifactId>atmosphere-runtime</artifactId>
                <version>${atmosphere-version}</version>
            </dependency>

            <dependency>
                <groupId>org.atmosphere</groupId>
                <artifactId>atmosphere-jersey</artifactId>
                <version>${atmosphere-version}</version>
            </dependency>

            <dependency>
                <groupId>org.atmosphere</groupId>
                <artifactId>nettosphere</artifactId>
                <version>${nettosphere-version}</version>
            </dependency>

            <dependency>
                <groupId>org.atmosphere</groupId>
                <artifactId>atmosphere-jquery</artifactId>
                <version>${atmosphere-version}</version>
                <type>war</type>
            </dependency>

            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-annotations</artifactId>
                <version>${jackson-version}</version>
            </dependency>
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-databind</artifactId>
                <version>${jackson-version}</version>
            </dependency>

            <dependency>
                <groupId>org.apache.geronimo.specs</groupId>
                <artifactId>geronimo-servlet_3.0_spec</artifactId>
                <version>1.0</version>
            </dependency>

            <dependency>
                <groupId>org.scala-lang</groupId>
                <artifactId>scala-library</artifactId>
                <version>${scala-version}</version>
            </dependency>

            <dependency>
                <groupId>org.scala-lang</groupId>
                <artifactId>scala-compiler</artifactId>
                <version>${scala-version}</version>
            </dependency>

        </dependencies>
    </dependencyManagement>

    <modules>
        <module>modules/swaggersocket-protocol</module>
        <module>modules/swaggersocket-server</module>
        <module>modules/swaggersocket-scala-client</module>
        <module>modules/swagger-integration</module>
        <module>modules/swaggersocket.js</module>
        <module>modules/swaggersocket.jquery</module>
        <module>osgi/karaf/features</module>
        <module>samples/swaggersocket-echo</module>
        <module>samples/swaggersocket-wordnik</module>
        <module>samples/swaggersocket-twitter</module>
        <module>samples/swaggersocket-helloworld</module>
        <module>samples/swaggersocket-helloworld2</module>
        <module>samples/swaggersocket-cxf-echo</module>
        <module>samples/swaggersocket-cxf-osgi-echo</module>
        <module>samples/swaggersocket-echo-node-client</module>
    </modules>
    <build>
        <extensions>
            <!-- Enabling the use of SSH -->
            <extension>
                <groupId>org.apache.maven.wagon</groupId>
                <artifactId>wagon-ssh-external</artifactId>
                <version>1.0-beta-6</version>
            </extension>
        </extensions>
        <defaultGoal>install</defaultGoal>
        <plugins>
            <plugin>
                <artifactId>maven-clean-plugin</artifactId>
                <version>2.4</version>
                <configuration>
                    <filesets>
                        <fileset>
                            <directory>${project.basedir}/works</directory>
                        </fileset>
                        <fileset>
                            <directory>${project.basedir}/overlays</directory>
                        </fileset>
                        <fileset>
                            <directory>${project.basedir}</directory>
                            <includes>
                                <include>*.log</include>
                            </includes>
                        </fileset>
                    </filesets>
                </configuration>
            </plugin>
            <plugin>
                <groupId>${jetty-maven-plugin-group}</groupId>
                <artifactId>jetty-maven-plugin</artifactId>
                <version>${jetty-version}</version>
                <configuration>
                    <scanIntervalSeconds>10</scanIntervalSeconds>
                    <webAppConfig>
                        <contextPath>/</contextPath>
                    </webAppConfig>
                    <connectors>
                        <!-- Using the default connector
                             org.eclipse.jetty.server.nio.SelectChannelConnector on port 8080.
                             to use other port, set system propety jetty.port -->
                    </connectors>
                </configuration>
                <!-- jetty9 is not picking up javax.mail automatically -->
                <dependencies>
                    <dependency>
                       <groupId>javax.mail</groupId>
                       <artifactId>mail</artifactId>
                       <version>${javax-mail-version}</version>
                    </dependency>
                </dependencies>
            </plugin>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>2.3.2</version>
                <configuration>
                    <source>1.6</source>
                    <target>1.6</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
                <version>2.4.3</version>
                <configuration>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-release-plugin</artifactId>
                <version>2.1</version>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-source-plugin</artifactId>
                <version>2.1.2</version>
                <executions>
                    <execution>
                        <id>attach-sources</id>
                        <phase>verify</phase>
                        <goals>
                            <goal>jar-no-fork</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-javadoc-plugin</artifactId>
                <version>2.7</version>
                <configuration>
                    <aggregate>true</aggregate>
                    <source>1.6</source>
                    <encoding>UTF-8</encoding>
                    <maxmemory>1g</maxmemory>
                    <links>
                        <link>http://java.sun.com/javase/6/docs/api/</link>
                    </links>
                </configuration>
                <executions>
                    <execution>
                        <id>attach-javadocs</id>
                        <phase>verify</phase>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
    <profiles>
        <profile>
            <id>release-sign-artifacts</id>
            <activation>
                <property>
                    <name>performRelease</name>
                    <value>true</value>
                </property>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-gpg-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>sign-artifacts</id>
                                <phase>verify</phase>
                                <goals>
                                    <goal>sign</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>test-output</id>
            <properties>
                <surefire.redirectTestOutputToFile>false</surefire.redirectTestOutputToFile>
            </properties>
        </profile>
        <profile>
            <id>jetty9</id>
            <properties>
                <jetty-version>${jetty9-version}</jetty-version>
                <jetty-maven-plugin-group>${jetty9-maven-plugin-group}</jetty-maven-plugin-group>
            </properties>
        </profile>
        <profile>
            <id>jetty8</id>
            <properties>
                <jetty-version>${jetty8-version}</jetty-version>
                <jetty-maven-plugin-group>${jetty8-maven-plugin-group}</jetty-maven-plugin-group>
            </properties>
        </profile>
        <profile>
            <id>fastinstall</id>
            <properties>
                <!-- set fast install options -->
                <maven.test.skip>true</maven.test.skip>
            </properties>
        </profile>
    </profiles>
    <repositories>
        <repository>
            <id>oss.sonatype.org</id>
            <url>https://oss.sonatype.org/content/repositories/releases</url>
        </repository>
        <repository>
            <id>oss.sonatype.org-snapshot</id>
            <url>https://oss.sonatype.org/content/repositories/snapshots</url>
        </repository>
    </repositories>
    <distributionManagement>
        <repository>
            <id>sonatype-nexus-staging</id>
            <name>Sonatype Release</name>
            <url>https://oss.sonatype.org/service/local/staging/deploy/maven2</url>
        </repository>
        <snapshotRepository>
            <id>sonatype-nexus-snapshots</id>
            <name>sonatype-nexus-snapshots</name>
            <url>${distMgmtSnapshotsUrl}</url>
        </snapshotRepository>
    </distributionManagement>
    <properties>
        <distMgmtSnapshotsUrl>https://oss.sonatype.org/content/repositories/snapshots</distMgmtSnapshotsUrl>
        <surefire.redirectTestOutputToFile>true</surefire.redirectTestOutputToFile>
        <source.property>1.6</source.property>
        <target.property>1.6</target.property>
        <!-- dependency versions in alphabetical order -->
        <ahc-version>1.8.14</ahc-version>
        <aries-version>1.0.0</aries-version>
        <atmosphere-version>2.2.6</atmosphere-version>
        <commons-lang-version>2.6</commons-lang-version>
        <cxf-version>3.0.4</cxf-version>
        <felix-configadmin-version>1.8.0</felix-configadmin-version>
        <felix-framework-version>3.2.2</felix-framework-version>
        <jackson-version>2.4.1</jackson-version>
        <javax-annotation-api-version>1.2</javax-annotation-api-version>
        <javax-mail-version>1.4.1</javax-mail-version>
        <jersey-version>1.19</jersey-version>
        <jetty-version>${jetty9-version}</jetty-version>
        <jetty8-version>8.1.16.v20140903</jetty8-version>
        <jetty9-version>9.2.7.v20150116</jetty9-version>
        <jetty-maven-plugin-group>${jetty9-maven-plugin-group}</jetty-maven-plugin-group>
        <jetty9-maven-plugin-group>org.eclipse.jetty</jetty9-maven-plugin-group>
        <jetty8-maven-plugin-group>org.mortbay.jetty</jetty8-maven-plugin-group>
        <junit-version>4.8.1</junit-version>
        <logback-version>1.0.13</logback-version>
        <maven-bundle-plugin-version>2.3.4</maven-bundle-plugin-version>
        <nettosphere-version>2.2.1</nettosphere-version>
        <osgi-core-version>4.2.0</osgi-core-version>
        <osgi-slf4j-version>[1.5,2)</osgi-slf4j-version>
        <osgi-javax-servlet-version>[0.0,4)</osgi-javax-servlet-version>
        <pax-logging-version>1.7.1</pax-logging-version>
        <scala-test-version>2.1.3</scala-test-version>
        <scala-version>2.10.0</scala-version>
        <servicemix-specs-jsr339-version>2.4.0</servicemix-specs-jsr339-version>
        <slf4j-version>1.6.3</slf4j-version>
        <swagger-core-version>1.3.11</swagger-core-version>
    </properties>
</project>
