switch to gradle
gradle files added gradle: plugins added build: files added .travis.yml: gradle cache stored distribution: tar and zip file stuff added broker/build.gradle: osgi plugin added build: bintray upload added pom: files removed distribution: assembly.xml removed gradle: test ouput added to sub builds .editorconfig: gradle files added build: wrapper task added osgi: added to h2_ and mapdb_storage gradle: files cleaned build.gradle: jars used for tar/zip
This commit is contained in:
committed by
Andreas Mager
parent
7c4f902dbd
commit
e8b105fa90
@@ -11,3 +11,6 @@ charset = utf-8
|
||||
indent_style = space
|
||||
indent_size = 4
|
||||
max_line_length=120
|
||||
|
||||
[*.gradle]
|
||||
indent_size = 2
|
||||
|
||||
+3
-1
@@ -1,3 +1,5 @@
|
||||
/build
|
||||
*/build/
|
||||
/target/
|
||||
/parser/target/
|
||||
/benchmarking/target/
|
||||
@@ -31,7 +33,6 @@ broker/runner
|
||||
.mtj.tmp/
|
||||
|
||||
# Package Files #
|
||||
*.jar
|
||||
*.war
|
||||
*.ear
|
||||
|
||||
@@ -43,3 +44,4 @@ broker/nb-configuration.xml
|
||||
broker/nbactions-Server.xml
|
||||
|
||||
maven-metadata.xml
|
||||
/.gradle/
|
||||
|
||||
+10
@@ -1,3 +1,13 @@
|
||||
language: java
|
||||
jdk:
|
||||
- oraclejdk8
|
||||
before_cache:
|
||||
- rm -f $HOME/.gradle/caches/modules-2/modules-2.lock
|
||||
- rm -fr $HOME/.gradle/caches/*/plugin-resolution/
|
||||
cache:
|
||||
directories:
|
||||
- $HOME/.gradle/caches/
|
||||
- $HOME/.gradle/wrapper/
|
||||
|
||||
script:
|
||||
- ./gradlew install test
|
||||
|
||||
@@ -64,6 +64,7 @@ Include dependency in your project:
|
||||
|
||||
## Build from sources
|
||||
|
||||
After a git clone of the repository, cd into the cloned sources and: `mvn clean package`.
|
||||
In distribution/target directory will be produced the selfcontained tar for the broker with all dependencies and a running script.
|
||||
After a git clone of the repository, cd into the cloned sources and: `./gradlew clean distribution:distMoquetteTar` or
|
||||
`./gradlew clean distribution:distMoquetteZip`.
|
||||
In distribution/build directory will be produced the selfcontained file for the broker with all dependencies and a running script.
|
||||
|
||||
|
||||
@@ -0,0 +1,51 @@
|
||||
|
||||
description = 'Moquette - broker'
|
||||
|
||||
apply plugin: 'osgi'
|
||||
apply plugin: 'maven'
|
||||
|
||||
dependencies {
|
||||
compile group: 'io.netty', name: 'netty-common', version: nettyVersion
|
||||
compile group: 'io.netty', name: 'netty-buffer', version: nettyVersion
|
||||
compile group: 'io.netty', name: 'netty-transport', version: nettyVersion
|
||||
compile group: 'io.netty', name: 'netty-handler', version: nettyVersion
|
||||
compile group: 'io.netty', name: 'netty-codec', version: nettyVersion
|
||||
compile group: 'io.netty', name: 'netty-codec-http', version: nettyVersion
|
||||
compile group: 'io.netty', name: 'netty-codec-mqtt', version: nettyVersion
|
||||
|
||||
compile group: 'io.netty', name: 'netty-transport-native-epoll', version: nettyVersion, classifier: 'linux-x86_64'
|
||||
// <classifier>${os.detected.name}-${os.detected.arch}</classifier>
|
||||
|
||||
compile group: 'io.dropwizard.metrics', name: 'metrics-core', version:'3.2.2'
|
||||
compile group: 'io.dropwizard.metrics', name: 'metrics-jvm', version:'3.2.2'
|
||||
|
||||
compile group: 'com.librato.metrics', name: 'metrics-librato', version:'5.1.0'
|
||||
compile group: 'com.librato.metrics', name: 'librato-java' , version:'2.1.0'
|
||||
compile group: 'com.bugsnag', name: 'bugsnag', version:'[3.0,4.0)'
|
||||
|
||||
compile group: 'commons-codec', name: 'commons-codec', version:'1.10'
|
||||
// compile group: 'org.hdrhistogram', name: 'HdrHistogram', version:'2.1.4'
|
||||
compile group: 'com.hazelcast', name: 'hazelcast', version:'3.5.4'
|
||||
|
||||
testCompile group: 'org.fusesource.mqtt-client', name: 'mqtt-client', version:'1.12'
|
||||
testCompile group: 'org.eclipse.paho', name: 'org.eclipse.paho.client.mqttv3', version:'1.0.2'
|
||||
testCompile group: 'org.eclipse.jetty.websocket', name: 'websocket-client', version:'9.2.0.M1'
|
||||
|
||||
testCompile group: 'com.h2database', name: 'h2', version:'1.4.191'
|
||||
}
|
||||
|
||||
task createPom () {
|
||||
pom { }.writeTo("build/pom.xml")
|
||||
}
|
||||
|
||||
jar {
|
||||
manifest {
|
||||
instruction 'Bundle-Description', 'Moquette lightweight MQTT Broker'
|
||||
instruction 'Bundle-License', 'http://www.apache.org/licenses/LICENSE-2.0.txt, http://www.eclipse.org/org/documents/epl-v10.php'
|
||||
instruction 'Import-Package', '!com.codahale.metrics*, !com.bugsnag*, !com.librato.metrics*, *'
|
||||
}
|
||||
into ("META-INF/maven/io.moquette/${project.name}"){
|
||||
from "build/pom.xml"
|
||||
}
|
||||
}
|
||||
jar.dependsOn createPom
|
||||
-282
@@ -1,282 +0,0 @@
|
||||
<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">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<relativePath>../</relativePath>
|
||||
<artifactId>moquette-parent</artifactId>
|
||||
<groupId>io.moquette</groupId>
|
||||
<version>0.11-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>moquette-broker</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
<name>Moquette - broker</name>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<bintray.package>io.moquette.moquette-broker</bintray.package>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
|
||||
<!--<dependency>-->
|
||||
<!--<groupId>${project.groupId}</groupId>-->
|
||||
<!--<artifactId>moquette-mapdb-storage</artifactId>-->
|
||||
<!--<version>${project.version}</version>-->
|
||||
<!--</dependency>-->
|
||||
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-api</artifactId>
|
||||
<version>1.7.5</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.netty</groupId>
|
||||
<artifactId>netty-common</artifactId>
|
||||
<version>${netty.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.netty</groupId>
|
||||
<artifactId>netty-buffer</artifactId>
|
||||
<version>${netty.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.netty</groupId>
|
||||
<artifactId>netty-transport</artifactId>
|
||||
<version>${netty.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.netty</groupId>
|
||||
<artifactId>netty-handler</artifactId>
|
||||
<version>${netty.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.netty</groupId>
|
||||
<artifactId>netty-codec</artifactId>
|
||||
<version>${netty.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.netty</groupId>
|
||||
<artifactId>netty-codec-http</artifactId>
|
||||
<version>${netty.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.netty</groupId>
|
||||
<artifactId>netty-codec-mqtt</artifactId>
|
||||
<version>${netty.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.netty</groupId>
|
||||
<artifactId>netty-transport-native-epoll</artifactId>
|
||||
<version>${netty.version}</version>
|
||||
<classifier>linux-x86_64</classifier>
|
||||
<!--
|
||||
<classifier>${os.detected.name}-${os.detected.arch}</classifier>
|
||||
-->
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.dropwizard.metrics</groupId>
|
||||
<artifactId>metrics-core</artifactId>
|
||||
<version>3.2.2</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.dropwizard.metrics</groupId>
|
||||
<artifactId>metrics-jvm</artifactId>
|
||||
<version>3.2.2</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.librato.metrics</groupId>
|
||||
<artifactId>metrics-librato</artifactId>
|
||||
<version>5.1.0</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.librato.metrics</groupId>
|
||||
<artifactId>librato-java</artifactId>
|
||||
<version>2.1.0</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.bugsnag</groupId>
|
||||
<artifactId>bugsnag</artifactId>
|
||||
<version>[3.0,4.0)</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>commons-codec</groupId>
|
||||
<artifactId>commons-codec</artifactId>
|
||||
<version>1.10</version>
|
||||
</dependency>
|
||||
|
||||
<!--<dependency>-->
|
||||
<!--<groupId>org.hdrhistogram</groupId>-->
|
||||
<!--<artifactId>HdrHistogram</artifactId>-->
|
||||
<!--<version>2.1.4</version>-->
|
||||
<!--</dependency>-->
|
||||
|
||||
<dependency>
|
||||
<groupId>com.hazelcast</groupId>
|
||||
<artifactId>hazelcast</artifactId>
|
||||
<version>3.5.4</version>
|
||||
</dependency>
|
||||
|
||||
<!-- Test dependencies -->
|
||||
<dependency>
|
||||
<groupId>junit</groupId>
|
||||
<artifactId>junit</artifactId>
|
||||
<version>4.8.2</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-log4j12</artifactId>
|
||||
<version>1.7.5</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<!-- needs extra dependencies: objenesis & hamcrest -->
|
||||
<dependency>
|
||||
<groupId>org.mockito</groupId>
|
||||
<artifactId>mockito-core</artifactId>
|
||||
<version>1.9.0</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.fusesource.mqtt-client</groupId>
|
||||
<artifactId>mqtt-client</artifactId>
|
||||
<version>1.12</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.eclipse.paho</groupId>
|
||||
<artifactId>org.eclipse.paho.client.mqttv3</artifactId>
|
||||
<version>1.0.2</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.websocket</groupId>
|
||||
<artifactId>websocket-client</artifactId>
|
||||
<version>9.2.0.M1</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.assertj</groupId>
|
||||
<artifactId>assertj-core</artifactId>
|
||||
<!-- use 2.6.0 for Java 7 projects -->
|
||||
<version>2.6.0</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.awaitility</groupId>
|
||||
<artifactId>awaitility</artifactId>
|
||||
<version>3.0.0</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.h2database</groupId>
|
||||
<artifactId>h2</artifactId>
|
||||
<version>1.4.191</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-surefire-plugin</artifactId>
|
||||
<configuration>
|
||||
<systemPropertyVariables>
|
||||
<io.netty.leakDetectionLevel>PARANOID</io.netty.leakDetectionLevel>
|
||||
</systemPropertyVariables>
|
||||
<includes>
|
||||
<include>**/*Test.java</include>
|
||||
</includes>
|
||||
</configuration>
|
||||
</plugin>
|
||||
|
||||
<!-- Generate the test-jar -->
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-jar-plugin</artifactId>
|
||||
<version>3.0.2</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<goals>
|
||||
<goal>test-jar</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
<!-- Includes to generate OSGi headers -->
|
||||
<plugin>
|
||||
<artifactId>maven-jar-plugin</artifactId>
|
||||
<configuration>
|
||||
<archive>
|
||||
<manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
|
||||
</archive>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<goals>
|
||||
<goal>test-jar</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.felix</groupId>
|
||||
<artifactId>maven-bundle-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>bundle-manifest</id>
|
||||
<phase>process-classes</phase>
|
||||
<goals>
|
||||
<goal>manifest</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
<configuration>
|
||||
<instructions>
|
||||
<Export-Package>
|
||||
io.moquette.persistence,
|
||||
io.moquette.server.config,
|
||||
io.moquette.spi,
|
||||
io.moquette.spi.impl.subscriptions,
|
||||
</Export-Package>
|
||||
<Embed-Dependency>
|
||||
com.bugsnag;bugsnag,
|
||||
com.librato.metrics;metrics-librato,
|
||||
com.librato.metrics;librato-java,
|
||||
</Embed-Dependency>
|
||||
</instructions>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
<distributionManagement>
|
||||
<repository>
|
||||
<id>bintray</id>
|
||||
<url>https://api.bintray.com/maven/${bintray.repo}/${bintray.package}</url>
|
||||
</repository>
|
||||
</distributionManagement>
|
||||
</project>
|
||||
@@ -0,0 +1,89 @@
|
||||
allprojects {
|
||||
apply plugin: 'maven'
|
||||
|
||||
group = 'io.moquette'
|
||||
version = '0.11-SNAPSHOT'
|
||||
}
|
||||
|
||||
buildscript {
|
||||
repositories {
|
||||
maven {
|
||||
url "https://plugins.gradle.org/m2/"
|
||||
}
|
||||
}
|
||||
dependencies {
|
||||
classpath 'net.ltgt.gradle:gradle-errorprone-plugin:0.0.8'
|
||||
classpath 'com.github.jengelman.gradle.plugins:shadow:1.2.3'
|
||||
classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.7.3'
|
||||
}
|
||||
}
|
||||
|
||||
subprojects {
|
||||
|
||||
repositories {
|
||||
mavenLocal()
|
||||
|
||||
maven { url "https://repo.eclipse.org/content/repositories/paho-releases/" }
|
||||
maven { url "https://oss.sonatype.org/content/repositories/snapshots" }
|
||||
maven { url "http://repo.maven.apache.org/maven2" }
|
||||
}
|
||||
|
||||
apply from: new File(rootDir, 'gradle/java.gradle')
|
||||
apply from: new File(rootDir, 'gradle/test.gradle')
|
||||
apply from: new File(rootDir, 'gradle/lint.gradle')
|
||||
apply plugin: 'com.jfrog.bintray'
|
||||
apply plugin: 'eclipse'
|
||||
apply plugin: 'net.ltgt.errorprone'
|
||||
configurations.errorprone {
|
||||
resolutionStrategy.force 'com.google.errorprone:error_prone_core:2.0.14'
|
||||
}
|
||||
|
||||
ext {
|
||||
nettyVersion = '4.1.12.Final'
|
||||
}
|
||||
|
||||
task packageTests(type: Jar) {
|
||||
from sourceSets.test.output
|
||||
from sourceSets.test.allSource
|
||||
from sourceSets.test.resources
|
||||
classifier = 'tests'
|
||||
}
|
||||
artifacts.archives packageTests
|
||||
|
||||
dependencies {
|
||||
compile group: 'org.slf4j', name: 'slf4j-api', version:'1.7.5'
|
||||
|
||||
testCompile group: 'junit', name: 'junit', version:'4.8.2'
|
||||
testCompile group: 'org.slf4j', name: 'slf4j-log4j12', version:'1.7.5'
|
||||
testCompile group: 'org.assertj', name: 'assertj-core', version:'2.6.0'
|
||||
testCompile group: 'org.mockito', name: 'mockito-core', version:'1.9.0'
|
||||
testCompile group: 'org.awaitility', name: 'awaitility', version: '3.0.0'
|
||||
|
||||
}
|
||||
|
||||
test {
|
||||
systemProperties.put "moquette.path", "build/resources/test/"
|
||||
systemProperties.put "io.netty.leakDetectionLevel", "paranoid"
|
||||
testLogging {
|
||||
exceptionFormat 'full'
|
||||
events "passed", "skipped", "failed"
|
||||
}
|
||||
}
|
||||
|
||||
// Deploy set environment variables and run ./gradlew bintrayUpload
|
||||
bintray {
|
||||
user = System.getenv('BINTRAY_USER')
|
||||
key = System.getenv('BINTRAY_KEY')
|
||||
pkg {
|
||||
repo = '${project.group}'
|
||||
name = "${project.name}"
|
||||
userOrg = 'andsel'
|
||||
licenses = ['Apache-2.0']
|
||||
vcsUrl = "https://api.bintray.com/maven/andsel/maven/${project.group}.${project.name}"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
task wrapper(type: Wrapper) {
|
||||
gradleVersion = '3.3'
|
||||
}
|
||||
@@ -0,0 +1,63 @@
|
||||
|
||||
description = 'Moquette - distribution'
|
||||
|
||||
apply plugin: 'application'
|
||||
|
||||
// adds task shadowJar - Create a combined JAR of project and runtime dependencies
|
||||
apply plugin: 'com.github.johnrengelman.shadow'
|
||||
|
||||
mainClassName = "io.moquette.server.Server"
|
||||
|
||||
dependencies {
|
||||
compile project(':moquette-broker')
|
||||
compile project(':moquette-h2-storage')
|
||||
compile project(':moquette-mapdb-storage')
|
||||
}
|
||||
|
||||
def packageSet = project.copySpec {
|
||||
from 'src/main/resources/README.txt'
|
||||
|
||||
into ('bin'){
|
||||
from 'src/main/scripts/'
|
||||
fileMode=0755
|
||||
}
|
||||
|
||||
into ('lib'){
|
||||
from "build/libs/${project.name}-${version}.jar"
|
||||
rename { "moquette-${version}.jar" }
|
||||
}
|
||||
|
||||
into ('lib'){
|
||||
from configurations.compile
|
||||
}
|
||||
|
||||
into ('config'){
|
||||
from 'src/main/resources/moquette.conf'
|
||||
from 'src/main/resources/password_file.conf'
|
||||
from 'src/main/resources/hazelcast.xml'
|
||||
// from 'src/main/resources/acl.conf'
|
||||
}
|
||||
|
||||
into ('config'){
|
||||
from 'src/main/resources/log4j.properties'
|
||||
rename { 'moquette-log.properties' }
|
||||
}
|
||||
}
|
||||
|
||||
task distMoquetteTar(type: Tar) {
|
||||
archiveName = "moquette-${version}.tar"
|
||||
destinationDir file('build')
|
||||
extension 'tar'
|
||||
compression = Compression.GZIP
|
||||
|
||||
with packageSet
|
||||
}
|
||||
distMoquetteTar.dependsOn jar
|
||||
|
||||
task distMoquetteZip(type: Zip) {
|
||||
archiveName = "moquette-${version}.zip"
|
||||
destinationDir file('build')
|
||||
|
||||
with packageSet
|
||||
}
|
||||
distMoquetteZip.dependsOn jar
|
||||
@@ -1,80 +0,0 @@
|
||||
<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">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<relativePath>../</relativePath>
|
||||
<!--<relativePath>../pom.xml</relativePath>-->
|
||||
<artifactId>moquette-parent</artifactId>
|
||||
<groupId>io.moquette</groupId>
|
||||
<version>0.11-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>distribution</artifactId>
|
||||
<packaging>pom</packaging>
|
||||
<name>Moquette - distribution</name>
|
||||
|
||||
<!-- Includes all modules -->
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>${project.groupId}</groupId>
|
||||
<artifactId>moquette-broker</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>${project.groupId}</groupId>
|
||||
<artifactId>moquette-h2-storage</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>${project.groupId}</groupId>
|
||||
<artifactId>moquette-mapdb-storage</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-api</artifactId>
|
||||
<version>1.7.5</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-log4j12</artifactId>
|
||||
<version>1.7.5</version>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
|
||||
<build>
|
||||
<sourceDirectory>${basedir}/src/main/</sourceDirectory> <!-- Force default maven layout -->
|
||||
<plugins>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-assembly-plugin</artifactId>
|
||||
<version>2.4</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>distribution-package</id>
|
||||
<phase>package</phase>
|
||||
<goals>
|
||||
<goal>single</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<!-- Specifies the configuration file of the assembly plugin -->
|
||||
<descriptors>
|
||||
<descriptor>${basedir}/src/main/assembly/assembly.xml</descriptor>
|
||||
</descriptors>
|
||||
<tarLongFileMode>gnu</tarLongFileMode>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
</project>
|
||||
@@ -1,57 +0,0 @@
|
||||
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
|
||||
<id>bundle-tar</id>
|
||||
<formats>
|
||||
<format>tar.gz</format>
|
||||
<!--<format>dir</format>-->
|
||||
</formats>
|
||||
<includeBaseDirectory>false</includeBaseDirectory> <!-- disable the creation of root's distribution dir in the archive -->
|
||||
|
||||
<files>
|
||||
<!-- executables scripts-->
|
||||
<file>
|
||||
<source>src/main/scripts/moquette.sh</source>
|
||||
<outputDirectory>bin</outputDirectory>
|
||||
<fileMode>0755</fileMode>
|
||||
</file>
|
||||
|
||||
<file>
|
||||
<source>src/main/scripts/moquette.bat</source>
|
||||
<outputDirectory>bin</outputDirectory>
|
||||
</file>
|
||||
|
||||
<file>
|
||||
<source>src/main/resources/log4j.properties</source>
|
||||
<outputDirectory>config/</outputDirectory>
|
||||
<destName>moquette-log.properties</destName>
|
||||
</file>
|
||||
|
||||
<file>
|
||||
<source>src/main/resources/moquette.conf</source>
|
||||
<outputDirectory>config/</outputDirectory>
|
||||
</file>
|
||||
|
||||
<file>
|
||||
<source>src/main/resources/password_file.conf</source>
|
||||
<outputDirectory>config/</outputDirectory>
|
||||
</file>
|
||||
|
||||
<file>
|
||||
<source>src/main/resources/hazelcast.xml</source>
|
||||
<outputDirectory>config/</outputDirectory>
|
||||
</file>
|
||||
|
||||
<file>
|
||||
<source>src/main/resources/README.txt</source>
|
||||
</file>
|
||||
</files>
|
||||
|
||||
|
||||
<dependencySets>
|
||||
<dependencySet>
|
||||
<outputDirectory>lib/</outputDirectory>
|
||||
<useProjectArtifact>true</useProjectArtifact> <!-- avoid inclusion of the artifact itself -->
|
||||
</dependencySet>
|
||||
</dependencySets>
|
||||
</assembly>
|
||||
@@ -0,0 +1,5 @@
|
||||
|
||||
description = 'Moquette - Embedded test'
|
||||
dependencies {
|
||||
compile project(':moquette-broker')
|
||||
}
|
||||
@@ -1,37 +0,0 @@
|
||||
<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">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<relativePath>../</relativePath>
|
||||
<artifactId>moquette-parent</artifactId>
|
||||
<groupId>io.moquette</groupId>
|
||||
<version>0.11-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>moquette-embedded-test</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
<name>Moquette - Embedded test</name>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>io.moquette</groupId>
|
||||
<artifactId>moquette-broker</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
|
||||
<!--<dependency>-->
|
||||
<!--<groupId>org.slf4j</groupId>-->
|
||||
<!--<artifactId>slf4j-log4j12</artifactId>-->
|
||||
<!--<version>1.6.4</version>-->
|
||||
<!--</dependency>-->
|
||||
|
||||
<dependency>
|
||||
<groupId>junit</groupId>
|
||||
<artifactId>junit</artifactId>
|
||||
<version>4.8.2</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
|
||||
</project>
|
||||
@@ -0,0 +1,9 @@
|
||||
apply plugin: 'java'
|
||||
apply plugin: 'jacoco'
|
||||
|
||||
sourceCompatibility = 1.8
|
||||
targetCompatibility = 1.8
|
||||
|
||||
tasks.withType(JavaCompile) {
|
||||
options.encoding = 'UTF-8'
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
apply plugin: 'checkstyle'
|
||||
apply plugin: 'findbugs'
|
||||
|
||||
checkstyle {
|
||||
configProperties.checkstyleConfigDir = "."
|
||||
configFile = new File(rootDir, 'checkstyle.xml')
|
||||
ignoreFailures false
|
||||
toolVersion = '6.7'
|
||||
}
|
||||
|
||||
findbugs {
|
||||
toolVersion = '3.0.1'
|
||||
ignoreFailures true
|
||||
omitVisitors = ['RuntimeExceptionCapture']
|
||||
}
|
||||
|
||||
tasks.withType(FindBugs) {
|
||||
maxHeapSize = '2g'
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
test {
|
||||
def outputReporter = new OutputReporter()
|
||||
addTestListener(outputReporter)
|
||||
addTestOutputListener(outputReporter)
|
||||
}
|
||||
|
||||
class OutputReporter implements TestListener, TestOutputListener {
|
||||
|
||||
private StringBuilder stdout = new StringBuilder();
|
||||
private StringBuilder stderr = new StringBuilder();
|
||||
|
||||
@Override
|
||||
void beforeSuite(TestDescriptor suite) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
void afterSuite(TestDescriptor suite, TestResult result) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
void beforeTest(TestDescriptor testDescriptor) {
|
||||
if (!testDescriptor.isComposite()) {
|
||||
stdout.setLength(0);
|
||||
stderr.setLength(0);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
void afterTest(TestDescriptor testDescriptor, TestResult result) {
|
||||
if (!testDescriptor.isComposite() && result.getResultType() == TestResult.ResultType.FAILURE) {
|
||||
if (stdout.length() != 0) {
|
||||
println ""
|
||||
println "--- STDOUT ---"
|
||||
print stdout
|
||||
println "--- STDOUT ---"
|
||||
}
|
||||
|
||||
if (stderr.length() != 0) {
|
||||
println ""
|
||||
println "--- STDERR ---"
|
||||
println stderr
|
||||
println "--- STDERR ---"
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
void onOutput(TestDescriptor testDescriptor, TestOutputEvent outputEvent) {
|
||||
if (!testDescriptor.isComposite()) {
|
||||
def buffer = (outputEvent.getDestination() == TestOutputEvent.Destination.StdOut) ? stdout : stderr;
|
||||
buffer.append(outputEvent.getMessage());
|
||||
if (outputEvent.getMessage().contains("LEAK:")) {
|
||||
println stdout
|
||||
println stderr
|
||||
throw new RuntimeException("Netty ResourceLeakDetector");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Vendored
BIN
Binary file not shown.
+6
@@ -0,0 +1,6 @@
|
||||
#Thu Aug 10 18:13:58 CEST 2017
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-bin.zip
|
||||
@@ -0,0 +1,164 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
##############################################################################
|
||||
##
|
||||
## Gradle start up script for UN*X
|
||||
##
|
||||
##############################################################################
|
||||
|
||||
# Attempt to set APP_HOME
|
||||
# Resolve links: $0 may be a link
|
||||
PRG="$0"
|
||||
# Need this for relative symlinks.
|
||||
while [ -h "$PRG" ] ; do
|
||||
ls=`ls -ld "$PRG"`
|
||||
link=`expr "$ls" : '.*-> \(.*\)$'`
|
||||
if expr "$link" : '/.*' > /dev/null; then
|
||||
PRG="$link"
|
||||
else
|
||||
PRG=`dirname "$PRG"`"/$link"
|
||||
fi
|
||||
done
|
||||
SAVED="`pwd`"
|
||||
cd "`dirname \"$PRG\"`/" >/dev/null
|
||||
APP_HOME="`pwd -P`"
|
||||
cd "$SAVED" >/dev/null
|
||||
|
||||
APP_NAME="Gradle"
|
||||
APP_BASE_NAME=`basename "$0"`
|
||||
|
||||
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||
DEFAULT_JVM_OPTS=""
|
||||
|
||||
# Use the maximum available, or set MAX_FD != -1 to use that value.
|
||||
MAX_FD="maximum"
|
||||
|
||||
warn ( ) {
|
||||
echo "$*"
|
||||
}
|
||||
|
||||
die ( ) {
|
||||
echo
|
||||
echo "$*"
|
||||
echo
|
||||
exit 1
|
||||
}
|
||||
|
||||
# OS specific support (must be 'true' or 'false').
|
||||
cygwin=false
|
||||
msys=false
|
||||
darwin=false
|
||||
nonstop=false
|
||||
case "`uname`" in
|
||||
CYGWIN* )
|
||||
cygwin=true
|
||||
;;
|
||||
Darwin* )
|
||||
darwin=true
|
||||
;;
|
||||
MINGW* )
|
||||
msys=true
|
||||
;;
|
||||
NONSTOP* )
|
||||
nonstop=true
|
||||
;;
|
||||
esac
|
||||
|
||||
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
|
||||
|
||||
# Determine the Java command to use to start the JVM.
|
||||
if [ -n "$JAVA_HOME" ] ; then
|
||||
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
|
||||
# IBM's JDK on AIX uses strange locations for the executables
|
||||
JAVACMD="$JAVA_HOME/jre/sh/java"
|
||||
else
|
||||
JAVACMD="$JAVA_HOME/bin/java"
|
||||
fi
|
||||
if [ ! -x "$JAVACMD" ] ; then
|
||||
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
|
||||
|
||||
Please set the JAVA_HOME variable in your environment to match the
|
||||
location of your Java installation."
|
||||
fi
|
||||
else
|
||||
JAVACMD="java"
|
||||
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
|
||||
Please set the JAVA_HOME variable in your environment to match the
|
||||
location of your Java installation."
|
||||
fi
|
||||
|
||||
# Increase the maximum file descriptors if we can.
|
||||
if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
|
||||
MAX_FD_LIMIT=`ulimit -H -n`
|
||||
if [ $? -eq 0 ] ; then
|
||||
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
|
||||
MAX_FD="$MAX_FD_LIMIT"
|
||||
fi
|
||||
ulimit -n $MAX_FD
|
||||
if [ $? -ne 0 ] ; then
|
||||
warn "Could not set maximum file descriptor limit: $MAX_FD"
|
||||
fi
|
||||
else
|
||||
warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
|
||||
fi
|
||||
fi
|
||||
|
||||
# For Darwin, add options to specify how the application appears in the dock
|
||||
if $darwin; then
|
||||
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
|
||||
fi
|
||||
|
||||
# For Cygwin, switch paths to Windows format before running java
|
||||
if $cygwin ; then
|
||||
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
|
||||
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
|
||||
JAVACMD=`cygpath --unix "$JAVACMD"`
|
||||
|
||||
# We build the pattern for arguments to be converted via cygpath
|
||||
ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
|
||||
SEP=""
|
||||
for dir in $ROOTDIRSRAW ; do
|
||||
ROOTDIRS="$ROOTDIRS$SEP$dir"
|
||||
SEP="|"
|
||||
done
|
||||
OURCYGPATTERN="(^($ROOTDIRS))"
|
||||
# Add a user-defined pattern to the cygpath arguments
|
||||
if [ "$GRADLE_CYGPATTERN" != "" ] ; then
|
||||
OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
|
||||
fi
|
||||
# Now convert the arguments - kludge to limit ourselves to /bin/sh
|
||||
i=0
|
||||
for arg in "$@" ; do
|
||||
CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
|
||||
CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
|
||||
|
||||
if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
|
||||
eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
|
||||
else
|
||||
eval `echo args$i`="\"$arg\""
|
||||
fi
|
||||
i=$((i+1))
|
||||
done
|
||||
case $i in
|
||||
(0) set -- ;;
|
||||
(1) set -- "$args0" ;;
|
||||
(2) set -- "$args0" "$args1" ;;
|
||||
(3) set -- "$args0" "$args1" "$args2" ;;
|
||||
(4) set -- "$args0" "$args1" "$args2" "$args3" ;;
|
||||
(5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
|
||||
(6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
|
||||
(7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
|
||||
(8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
|
||||
(9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
|
||||
esac
|
||||
fi
|
||||
|
||||
# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
|
||||
function splitJvmOpts() {
|
||||
JVM_OPTS=("$@")
|
||||
}
|
||||
eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
|
||||
JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
|
||||
|
||||
exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
|
||||
Vendored
+90
@@ -0,0 +1,90 @@
|
||||
@if "%DEBUG%" == "" @echo off
|
||||
@rem ##########################################################################
|
||||
@rem
|
||||
@rem Gradle startup script for Windows
|
||||
@rem
|
||||
@rem ##########################################################################
|
||||
|
||||
@rem Set local scope for the variables with windows NT shell
|
||||
if "%OS%"=="Windows_NT" setlocal
|
||||
|
||||
set DIRNAME=%~dp0
|
||||
if "%DIRNAME%" == "" set DIRNAME=.
|
||||
set APP_BASE_NAME=%~n0
|
||||
set APP_HOME=%DIRNAME%
|
||||
|
||||
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||
set DEFAULT_JVM_OPTS=
|
||||
|
||||
@rem Find java.exe
|
||||
if defined JAVA_HOME goto findJavaFromJavaHome
|
||||
|
||||
set JAVA_EXE=java.exe
|
||||
%JAVA_EXE% -version >NUL 2>&1
|
||||
if "%ERRORLEVEL%" == "0" goto init
|
||||
|
||||
echo.
|
||||
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
echo.
|
||||
echo Please set the JAVA_HOME variable in your environment to match the
|
||||
echo location of your Java installation.
|
||||
|
||||
goto fail
|
||||
|
||||
:findJavaFromJavaHome
|
||||
set JAVA_HOME=%JAVA_HOME:"=%
|
||||
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
|
||||
|
||||
if exist "%JAVA_EXE%" goto init
|
||||
|
||||
echo.
|
||||
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
|
||||
echo.
|
||||
echo Please set the JAVA_HOME variable in your environment to match the
|
||||
echo location of your Java installation.
|
||||
|
||||
goto fail
|
||||
|
||||
:init
|
||||
@rem Get command-line arguments, handling Windows variants
|
||||
|
||||
if not "%OS%" == "Windows_NT" goto win9xME_args
|
||||
if "%@eval[2+2]" == "4" goto 4NT_args
|
||||
|
||||
:win9xME_args
|
||||
@rem Slurp the command line arguments.
|
||||
set CMD_LINE_ARGS=
|
||||
set _SKIP=2
|
||||
|
||||
:win9xME_args_slurp
|
||||
if "x%~1" == "x" goto execute
|
||||
|
||||
set CMD_LINE_ARGS=%*
|
||||
goto execute
|
||||
|
||||
:4NT_args
|
||||
@rem Get arguments from the 4NT Shell from JP Software
|
||||
set CMD_LINE_ARGS=%$
|
||||
|
||||
:execute
|
||||
@rem Setup the command line
|
||||
|
||||
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
|
||||
|
||||
@rem Execute Gradle
|
||||
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
|
||||
|
||||
:end
|
||||
@rem End local scope for the variables with windows NT shell
|
||||
if "%ERRORLEVEL%"=="0" goto mainEnd
|
||||
|
||||
:fail
|
||||
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
|
||||
rem the _cmd.exe /c_ return code!
|
||||
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
|
||||
exit /b 1
|
||||
|
||||
:mainEnd
|
||||
if "%OS%"=="Windows_NT" endlocal
|
||||
|
||||
:omega
|
||||
@@ -0,0 +1,23 @@
|
||||
|
||||
description = 'Moquette - H2 storage'
|
||||
|
||||
apply plugin: 'osgi'
|
||||
apply plugin: 'maven'
|
||||
|
||||
dependencies {
|
||||
compile project(':moquette-broker')
|
||||
compile group: 'com.h2database', name: 'h2-mvstore', version: '1.4.192'
|
||||
|
||||
testCompile project(path:':moquette-broker', configuration: 'archives')
|
||||
}
|
||||
|
||||
task createPom () {
|
||||
pom { }.writeTo("build/pom.xml")
|
||||
}
|
||||
|
||||
jar {
|
||||
into ("META-INF/maven/io.moquette/${project.name}"){
|
||||
from "build/pom.xml"
|
||||
}
|
||||
}
|
||||
jar.dependsOn createPom
|
||||
@@ -1,129 +0,0 @@
|
||||
<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">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<relativePath>../</relativePath>
|
||||
<artifactId>moquette-parent</artifactId>
|
||||
<groupId>io.moquette</groupId>
|
||||
<version>0.11-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>moquette-h2-storage</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
<name>Moquette - H2 storage</name>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<bintray.package>io.moquette.moquette-h2-storage </bintray.package>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>${project.groupId}</groupId>
|
||||
<artifactId>moquette-broker</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-api</artifactId>
|
||||
<version>1.7.5</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.h2database</groupId>
|
||||
<artifactId>h2-mvstore</artifactId>
|
||||
<version>1.4.192</version>
|
||||
</dependency>
|
||||
|
||||
<!-- Test dependencies -->
|
||||
<dependency>
|
||||
<groupId>junit</groupId>
|
||||
<artifactId>junit</artifactId>
|
||||
<version>4.8.2</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-log4j12</artifactId>
|
||||
<version>1.7.5</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<!-- needs extra dependencies: objenesis & hamcrest -->
|
||||
<dependency>
|
||||
<groupId>org.mockito</groupId>
|
||||
<artifactId>mockito-core</artifactId>
|
||||
<version>1.9.0</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.assertj</groupId>
|
||||
<artifactId>assertj-core</artifactId>
|
||||
<!-- use 2.6.0 for Java 7 projects -->
|
||||
<version>2.6.0</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.moquette</groupId>
|
||||
<artifactId>moquette-broker</artifactId>
|
||||
<type>test-jar</type>
|
||||
<version>${project.version}</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-surefire-plugin</artifactId>
|
||||
<configuration>
|
||||
<includes>
|
||||
<include>**/*Test.java</include>
|
||||
</includes>
|
||||
</configuration>
|
||||
</plugin>
|
||||
|
||||
<!-- Includes to generate OSGi headers -->
|
||||
<plugin>
|
||||
<artifactId>maven-jar-plugin</artifactId>
|
||||
<configuration>
|
||||
<archive>
|
||||
<manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
|
||||
</archive>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<goals>
|
||||
<goal>test-jar</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.felix</groupId>
|
||||
<artifactId>maven-bundle-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>bundle-manifest</id>
|
||||
<phase>process-classes</phase>
|
||||
<goals>
|
||||
<goal>manifest</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
<distributionManagement>
|
||||
<repository>
|
||||
<id>bintray</id>
|
||||
<url>https://api.bintray.com/maven/${bintray.repo}/${bintray.package}</url>
|
||||
</repository>
|
||||
</distributionManagement>
|
||||
</project>
|
||||
@@ -0,0 +1,23 @@
|
||||
|
||||
description = 'Moquette - MapDB storage'
|
||||
|
||||
apply plugin: 'osgi'
|
||||
apply plugin: 'maven'
|
||||
|
||||
dependencies {
|
||||
compile project(':moquette-broker')
|
||||
compile group: 'org.mapdb', name: 'mapdb', version:'1.0.8'
|
||||
|
||||
testCompile project(path:':moquette-broker', configuration: 'archives')
|
||||
}
|
||||
|
||||
task createPom () {
|
||||
pom { }.writeTo("build/pom.xml")
|
||||
}
|
||||
|
||||
jar {
|
||||
into ("META-INF/maven/io.moquette/${project.name}"){
|
||||
from "build/pom.xml"
|
||||
}
|
||||
}
|
||||
jar.dependsOn createPom
|
||||
@@ -1,129 +0,0 @@
|
||||
<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">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<relativePath>../</relativePath>
|
||||
<artifactId>moquette-parent</artifactId>
|
||||
<groupId>io.moquette</groupId>
|
||||
<version>0.11-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>moquette-mapdb-storage</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
<name>Moquette - MapDB storage</name>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<bintray.package>io.moquette.moquette-mapdb-storage </bintray.package>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>${project.groupId}</groupId>
|
||||
<artifactId>moquette-broker</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-api</artifactId>
|
||||
<version>1.7.5</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.mapdb</groupId>
|
||||
<artifactId>mapdb</artifactId>
|
||||
<version>1.0.8</version>
|
||||
</dependency>
|
||||
|
||||
<!-- Test dependencies -->
|
||||
<dependency>
|
||||
<groupId>junit</groupId>
|
||||
<artifactId>junit</artifactId>
|
||||
<version>4.8.2</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-log4j12</artifactId>
|
||||
<version>1.7.5</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<!-- needs extra dependencies: objenesis & hamcrest -->
|
||||
<dependency>
|
||||
<groupId>org.mockito</groupId>
|
||||
<artifactId>mockito-core</artifactId>
|
||||
<version>1.9.0</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.assertj</groupId>
|
||||
<artifactId>assertj-core</artifactId>
|
||||
<!-- use 2.6.0 for Java 7 projects -->
|
||||
<version>2.6.0</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.moquette</groupId>
|
||||
<artifactId>moquette-broker</artifactId>
|
||||
<type>test-jar</type>
|
||||
<version>${project.version}</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-surefire-plugin</artifactId>
|
||||
<configuration>
|
||||
<includes>
|
||||
<include>**/*Test.java</include>
|
||||
</includes>
|
||||
</configuration>
|
||||
</plugin>
|
||||
|
||||
<!-- Includes to generate OSGi headers -->
|
||||
<plugin>
|
||||
<artifactId>maven-jar-plugin</artifactId>
|
||||
<configuration>
|
||||
<archive>
|
||||
<manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
|
||||
</archive>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<goals>
|
||||
<goal>test-jar</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.felix</groupId>
|
||||
<artifactId>maven-bundle-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>bundle-manifest</id>
|
||||
<phase>process-classes</phase>
|
||||
<goals>
|
||||
<goal>manifest</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
<distributionManagement>
|
||||
<repository>
|
||||
<id>bintray</id>
|
||||
<url>https://api.bintray.com/maven/${bintray.repo}/${bintray.package}</url>
|
||||
</repository>
|
||||
</distributionManagement>
|
||||
</project>
|
||||
+1
-1
@@ -2,4 +2,4 @@
|
||||
|
||||
to run the osgi tests use:
|
||||
|
||||
mvn clean && mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V && mvn -B test -pl osgi_test
|
||||
./gradlew install moquette-osgi-test:test --rerun-tasks
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
|
||||
description = 'Moquette - OSGi test'
|
||||
|
||||
ext {
|
||||
paxExamVersion = '4.6.0'
|
||||
}
|
||||
|
||||
dependencies {
|
||||
compile project(':moquette-broker')
|
||||
compile project(':moquette-h2-storage')
|
||||
compile project(':moquette-mapdb-storage')
|
||||
|
||||
testCompile group: 'org.slf4j', name: 'slf4j-api', version: '1.7.5'
|
||||
testCompile group: 'org.slf4j', name: 'slf4j-log4j12', version: '1.7.5'
|
||||
|
||||
testCompile group: 'org.ops4j.pax.exam', name: 'pax-exam-container-native', version: paxExamVersion
|
||||
testCompile group: 'org.ops4j.pax.exam', name: 'pax-exam-junit4', version: paxExamVersion
|
||||
testCompile group: 'org.ops4j.pax.exam', name: 'pax-exam-link-mvn', version: paxExamVersion
|
||||
testCompile group: 'org.ops4j.pax.url', name: 'pax-url-aether', version:'1.4.0'
|
||||
testCompile group: 'org.apache.felix', name: 'org.apache.felix.framework', version:'5.0.0'
|
||||
testCompile group: 'javax.inject', name: 'javax.inject', version:'1'
|
||||
}
|
||||
@@ -1,183 +0,0 @@
|
||||
<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">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<relativePath>../</relativePath>
|
||||
<artifactId>moquette-parent</artifactId>
|
||||
<groupId>io.moquette</groupId>
|
||||
<version>0.11-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>moquette-osgi-test</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
<name>Moquette - OSGi test</name>
|
||||
|
||||
<properties>
|
||||
<pax.exam.version>4.6.0</pax.exam.version>
|
||||
<url.version>1.4.0</url.version>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>io.moquette</groupId>
|
||||
<artifactId>moquette-broker</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.moquette</groupId>
|
||||
<artifactId>moquette-h2-storage</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.moquette</groupId>
|
||||
<artifactId>moquette-mapdb-storage</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>javax.servlet</groupId>
|
||||
<artifactId>javax.servlet-api</artifactId>
|
||||
<version>3.1.0</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-api</artifactId>
|
||||
<version>1.7.5</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-log4j12</artifactId>
|
||||
<version>1.7.5</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.ops4j.pax.exam</groupId>
|
||||
<artifactId>pax-exam-container-native</artifactId>
|
||||
<version>${pax.exam.version}</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.ops4j.pax.exam</groupId>
|
||||
<artifactId>pax-exam-junit4</artifactId>
|
||||
<version>${pax.exam.version}</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.ops4j.pax.exam</groupId>
|
||||
<artifactId>pax-exam-link-mvn</artifactId>
|
||||
<version>${pax.exam.version}</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.ops4j.pax.url</groupId>
|
||||
<artifactId>pax-url-aether</artifactId>
|
||||
<version>${url.version}</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.apache.felix</groupId>
|
||||
<artifactId>org.apache.felix.framework</artifactId>
|
||||
<version>5.0.0</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>javax.inject</groupId>
|
||||
<artifactId>javax.inject</artifactId>
|
||||
<version>1</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-antrun-plugin</artifactId>
|
||||
<version>1.7</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>compile</id>
|
||||
<phase>compile</phase>
|
||||
<configuration>
|
||||
<target>
|
||||
<property name="compile_classpath" refid="maven.compile.classpath"/>
|
||||
<property name="runtime_classpath" refid="maven.runtime.classpath"/>
|
||||
<property name="test_classpath" refid="maven.test.classpath"/>
|
||||
<property name="plugin_classpath" refid="maven.plugin.classpath"/>
|
||||
|
||||
<echo message="compile classpath: ${compile_classpath}"/>
|
||||
<echo message="runtime classpath: ${runtime_classpath}"/>
|
||||
<echo message="test classpath: ${test_classpath}"/>
|
||||
<echo message="plugin classpath: ${plugin_classpath}"/>
|
||||
</target>
|
||||
</configuration>
|
||||
<goals>
|
||||
<goal>run</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.ops4j.pax.exam</groupId>
|
||||
<artifactId>exam-maven-plugin</artifactId>
|
||||
<version>${pax.exam.version}</version>
|
||||
<configuration>
|
||||
<configClass>io.moquette.test.osgi.MoquetteOsgiTest</configClass>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<goals>
|
||||
<goal>start-container</goal>
|
||||
<goal>stop-container</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.servicemix.tooling</groupId>
|
||||
<artifactId>depends-maven-plugin</artifactId>
|
||||
<version>1.2</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>generate-depends-file</id>
|
||||
<phase>generate-resources</phase>
|
||||
<goals>
|
||||
<goal>generate-depends-file</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-failsafe-plugin</artifactId>
|
||||
<version>2.12</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<goals>
|
||||
<goal>integration-test</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
<configuration>
|
||||
<forkMode>always</forkMode>
|
||||
<parallel>none</parallel>
|
||||
<threadCount>1</threadCount>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
||||
@@ -16,11 +16,14 @@
|
||||
|
||||
package io.moquette.test.osgi;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
import static org.junit.Assert.fail;
|
||||
import static org.ops4j.pax.exam.CoreOptions.*;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.Arrays;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
import javax.inject.Inject;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.ops4j.pax.exam.Configuration;
|
||||
@@ -30,7 +33,6 @@ import org.osgi.framework.Bundle;
|
||||
import org.osgi.framework.BundleContext;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import javax.inject.Inject;
|
||||
|
||||
/**
|
||||
* Run a set of unit tests inside of an OSGi container to make sure
|
||||
@@ -45,46 +47,34 @@ public class MoquetteOsgiTest {
|
||||
private BundleContext bundleContext;
|
||||
|
||||
@Configuration
|
||||
public Option[] config() {
|
||||
public Option[] config() throws IOException {
|
||||
String nettyV = "4.1.12.Final";
|
||||
|
||||
return options(
|
||||
junitBundles(),
|
||||
|
||||
mavenBundle("com.google.guava", "guava").versionAsInProject(),
|
||||
//mavenBundle("com.google.code.findbugs", "jsr305").versionAsInProject(),
|
||||
mavenBundle("com.hazelcast", "hazelcast"),
|
||||
|
||||
mavenBundle("com.fasterxml.jackson.core", "jackson-core").versionAsInProject().start(),
|
||||
mavenBundle("com.fasterxml.jackson.core", "jackson-databind").versionAsInProject(),
|
||||
mavenBundle("com.fasterxml.jackson.core", "jackson-annotations").versionAsInProject(),
|
||||
//mavenBundle("com.librato.metrics", "librato-java").versionAsInProject(),
|
||||
//mavenBundle("com.librato.metrics", "metrics-librato").versionAsInProject(),
|
||||
mavenBundle("io.dropwizard.metrics", "metrics-core").versionAsInProject(),
|
||||
mavenBundle("io.dropwizard.metrics", "metrics-jvm").versionAsInProject(),
|
||||
mavenBundle("com.hazelcast", "hazelcast").versionAsInProject(),
|
||||
mavenBundle("io.netty", "netty-common", nettyV),
|
||||
mavenBundle("io.netty", "netty-buffer", nettyV),
|
||||
mavenBundle("io.netty", "netty-transport", nettyV),
|
||||
mavenBundle("io.netty", "netty-resolver", nettyV),
|
||||
mavenBundle("io.netty", "netty-handler", nettyV),
|
||||
mavenBundle("io.netty", "netty-codec", nettyV),
|
||||
mavenBundle("io.netty", "netty-codec-http", nettyV),
|
||||
mavenBundle("io.netty", "netty-codec-mqtt", nettyV),
|
||||
mavenBundle("io.netty", "netty-transport-native-epoll", nettyV),
|
||||
mavenBundle("io.netty", "netty-transport-native-unix-common", nettyV),
|
||||
|
||||
mavenBundle("io.netty", "netty-common").versionAsInProject(),
|
||||
mavenBundle("io.netty", "netty-buffer").versionAsInProject(),
|
||||
mavenBundle("io.netty", "netty-transport").versionAsInProject(),
|
||||
mavenBundle("io.netty", "netty-resolver").versionAsInProject(),
|
||||
mavenBundle("io.netty", "netty-handler").versionAsInProject(),
|
||||
mavenBundle("io.netty", "netty-handler").versionAsInProject(),
|
||||
mavenBundle("io.netty", "netty-codec").versionAsInProject(),
|
||||
mavenBundle("io.netty", "netty-codec-http").versionAsInProject(),
|
||||
mavenBundle("io.netty", "netty-codec-mqtt").versionAsInProject(),
|
||||
mavenBundle("io.netty", "netty-transport-native-epoll").versionAsInProject(),
|
||||
mavenBundle("io.netty", "netty-transport-native-unix-common").versionAsInProject(),
|
||||
mavenBundle("commons-codec", "commons-codec"),
|
||||
|
||||
mavenBundle("commons-codec", "commons-codec").versionAsInProject(),
|
||||
mavenBundle("io.moquette", "moquette-broker"),
|
||||
|
||||
mavenBundle("javax.servlet", "javax.servlet-api").versionAsInProject(),
|
||||
mavenBundle("com.h2database", "h2-mvstore"),
|
||||
mavenBundle("io.moquette", "moquette-h2-storage"),
|
||||
|
||||
mavenBundle("io.moquette", "moquette-broker").versionAsInProject(),
|
||||
|
||||
mavenBundle("com.h2database", "h2-mvstore").versionAsInProject(),
|
||||
mavenBundle("io.moquette", "moquette-h2-storage").versionAsInProject(),
|
||||
|
||||
mavenBundle("org.mapdb", "mapdb").versionAsInProject(),
|
||||
mavenBundle("io.moquette", "moquette-mapdb-storage").versionAsInProject()
|
||||
mavenBundle("org.mapdb", "mapdb", "1.0.8"),
|
||||
mavenBundle("io.moquette", "moquette-mapdb-storage")
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
|
||||
description = 'Moquette - performance tests'
|
||||
dependencies {
|
||||
compile project(':moquette-broker')
|
||||
compile group: 'io.netty', name: 'netty-codec-mqtt', version:"${nettyVersion}"
|
||||
compile group: 'org.hdrhistogram', name: 'HdrHistogram', version:'2.1.2'
|
||||
compile group: 'org.eclipse.paho', name: 'org.eclipse.paho.client.mqttv3', version:'1.1.0'
|
||||
compile group: 'org.eclipse.jetty.toolchain', name: 'jetty-perf-helper', version:'1.0.5'
|
||||
}
|
||||
-142
@@ -1,142 +0,0 @@
|
||||
|
||||
<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">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<relativePath>../</relativePath>
|
||||
<artifactId>moquette-parent</artifactId>
|
||||
<groupId>io.moquette</groupId>
|
||||
<version>0.11-SNAPSHOT</version>
|
||||
</parent>
|
||||
|
||||
<artifactId>moquette-performance</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
<name>Moquette - performance tests</name>
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<bintray.package>io.moquette.moquette-performance</bintray.package>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>${project.groupId}</groupId>
|
||||
<artifactId>moquette-broker</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>${project.groupId}</groupId>
|
||||
<artifactId>moquette-broker</artifactId>
|
||||
<version>${project.version}</version>
|
||||
<type>test-jar</type>
|
||||
</dependency>
|
||||
|
||||
<!--<dependency>-->
|
||||
<!--<groupId>io.netty</groupId>-->
|
||||
<!--<artifactId>netty-common</artifactId>-->
|
||||
<!--<version>${netty.version}</version>-->
|
||||
<!--</dependency>-->
|
||||
<!---->
|
||||
<!--<dependency>-->
|
||||
<!--<groupId>io.netty</groupId>-->
|
||||
<!--<artifactId>netty-buffer</artifactId>-->
|
||||
<!--<version>${netty.version}</version>-->
|
||||
<!--</dependency>-->
|
||||
<!---->
|
||||
<!--<dependency>-->
|
||||
<!--<groupId>io.netty</groupId>-->
|
||||
<!--<artifactId>netty-transport</artifactId>-->
|
||||
<!--<version>${netty.version}</version>-->
|
||||
<!--</dependency>-->
|
||||
<!---->
|
||||
<!--<dependency>-->
|
||||
<!--<groupId>io.netty</groupId>-->
|
||||
<!--<artifactId>netty-handler</artifactId>-->
|
||||
<!--<version>${netty.version}</version>-->
|
||||
<!--</dependency>-->
|
||||
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-log4j12</artifactId>
|
||||
<version>1.6.4</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.netty</groupId>
|
||||
<artifactId>netty-codec-mqtt</artifactId>
|
||||
<version>${netty.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.hdrhistogram</groupId>
|
||||
<artifactId>HdrHistogram</artifactId>
|
||||
<version>2.1.2</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.eclipse.paho</groupId>
|
||||
<artifactId>org.eclipse.paho.client.mqttv3</artifactId>
|
||||
<version>1.1.0</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.eclipse.jetty.toolchain</groupId>
|
||||
<artifactId>jetty-perf-helper</artifactId>
|
||||
<version>1.0.5</version>
|
||||
</dependency>
|
||||
|
||||
|
||||
<dependency>
|
||||
<groupId>junit</groupId>
|
||||
<artifactId>junit</artifactId>
|
||||
<version>4.8.2</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-surefire-plugin</artifactId>
|
||||
<configuration>
|
||||
<excludes>
|
||||
<exclude>io/moquette/parser/netty/TestUtils.java</exclude>
|
||||
<exclude>io/moquette/parser/netty/TestUtils$*</exclude>
|
||||
</excludes>
|
||||
</configuration>
|
||||
</plugin>
|
||||
|
||||
<!-- Includes to generate OSGi headers -->
|
||||
<plugin>
|
||||
<artifactId>maven-jar-plugin</artifactId>
|
||||
<configuration>
|
||||
<archive>
|
||||
<manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
|
||||
</archive>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.felix</groupId>
|
||||
<artifactId>maven-bundle-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>bundle-manifest</id>
|
||||
<phase>process-classes</phase>
|
||||
<goals>
|
||||
<goal>manifest</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
<distributionManagement>
|
||||
<repository>
|
||||
<id>bintray</id>
|
||||
<url>https://api.bintray.com/maven/${bintray.repo}/${bintray.package}</url>
|
||||
</repository>
|
||||
</distributionManagement>
|
||||
</project>
|
||||
@@ -1,235 +0,0 @@
|
||||
<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">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<netty.version>4.1.12.Final</netty.version>
|
||||
<source.version>1.8</source.version>
|
||||
<target.version>1.8</target.version>
|
||||
<bintray.repo>andsel/maven</bintray.repo>
|
||||
<bintray.parent.package>io.moquette.moquette-parent</bintray.parent.package>
|
||||
</properties>
|
||||
|
||||
<groupId>io.moquette</groupId>
|
||||
<artifactId>moquette-parent</artifactId>
|
||||
|
||||
<packaging>pom</packaging>
|
||||
<version>0.11-SNAPSHOT</version>
|
||||
<name>Moquette MQTT</name>
|
||||
<description>Moquette lightweight MQTT Broker</description>
|
||||
<inceptionYear>2011</inceptionYear>
|
||||
<url>https://github.com/andsel/moquette/</url>
|
||||
|
||||
<licenses>
|
||||
<license>
|
||||
<name>The Apache License, Version 2.0</name>
|
||||
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
|
||||
</license>
|
||||
<license>
|
||||
<name>Eclipse Public License - Version 1.0</name>
|
||||
<url>http://www.eclipse.org/org/documents/epl-v10.php</url>
|
||||
</license>
|
||||
</licenses>
|
||||
|
||||
<developers>
|
||||
<developer>
|
||||
<id>andsel</id>
|
||||
<name>Andrea Selva</name>
|
||||
<roles>
|
||||
<role>architect</role>
|
||||
<role>developer</role>
|
||||
<role>founder</role>
|
||||
</roles>
|
||||
<timezone>+1</timezone>
|
||||
</developer>
|
||||
</developers>
|
||||
|
||||
<contributors>
|
||||
<contributor>
|
||||
<name>Steven Warwick</name>
|
||||
<url>http://stevenwarwick.com</url>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Igor Yova</name>
|
||||
<url>https://github.com/Fameing</url>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Luca Capra</name>
|
||||
<url>https://github.com/muka</url>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Wagner Macedo</name>
|
||||
<url>https://github.com/wagnerluis1982</url>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Luis Barrios</name>
|
||||
<url>https://github.com/lbarriosh</url>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Christophe Mourette</name>
|
||||
<url>https://github.com/mackristof</url>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Victor Kazakov</name>
|
||||
<url>https://github.com/kazvictor</url>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Neeme Praks</name>
|
||||
<url>https://github.com/nemecec</url>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Kevin Berendsen</name>
|
||||
<url>https://github.com/kevto</url>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Chris Schaefer</name>
|
||||
<url>https://github.com/windbender</url>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Keith Hughes</name>
|
||||
<url>http://www.inhabitech.com/blog/author/keith/</url>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Luca Capra</name>
|
||||
<email>[email protected]</email>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>konradm</name>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>pkhanal</name>
|
||||
</contributor>
|
||||
</contributors>
|
||||
|
||||
<scm>
|
||||
<connection>scm:git:[email protected]:andsel/moquette.git</connection>
|
||||
<developerConnection>scm:git:[email protected]:andsel/moquette.git</developerConnection>
|
||||
<url>[email protected]:andsel/moquette.git</url>
|
||||
</scm>
|
||||
|
||||
<modules>
|
||||
<module>broker</module>
|
||||
<module>mapdb_storage</module>
|
||||
<module>h2_storage</module>
|
||||
<module>distribution</module>
|
||||
<module>embedding_moquette</module>
|
||||
<module>osgi_test</module>
|
||||
<module>perf</module>
|
||||
</modules>
|
||||
|
||||
<reporting>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>cobertura-maven-plugin</artifactId>
|
||||
<version>2.6</version>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</reporting>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<configuration>
|
||||
<source>${source.version}</source>
|
||||
<target>${target.version}</target>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-checkstyle-plugin</artifactId>
|
||||
<version>2.17</version>
|
||||
<configuration>
|
||||
<configLocation>checkstyle.xml</configLocation>
|
||||
<suppressionsLocation>checkstyle-suppressions.xml</suppressionsLocation>
|
||||
<!--
|
||||
<configLocation>/google_checks.xml</configLocation>
|
||||
-->
|
||||
<failOnViolation>true</failOnViolation>
|
||||
<consoleOutput>true</consoleOutput>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<phase>validate</phase>
|
||||
<goals>
|
||||
<goal>check</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
<profiles>
|
||||
<profile>
|
||||
<id>release-sign-artifacts</id>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-source-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>attach-sources</id>
|
||||
<goals>
|
||||
<goal>jar</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-javadoc-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>attach-javadocs</id>
|
||||
<goals>
|
||||
<goal>jar</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-gpg-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>sign-artifacts</id>
|
||||
<phase>package</phase>
|
||||
<goals>
|
||||
<goal>sign</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</profile>
|
||||
</profiles>
|
||||
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>Paho Releases</id>
|
||||
<url>https://repo.eclipse.org/content/repositories/paho-releases/</url>
|
||||
</repository>
|
||||
|
||||
<repository>
|
||||
<id>sonatype-snapshots</id>
|
||||
<snapshots>
|
||||
<enabled>true</enabled>
|
||||
</snapshots>
|
||||
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
|
||||
</repository>
|
||||
</repositories>
|
||||
|
||||
<distributionManagement>
|
||||
<repository>
|
||||
<id>bintray</id>
|
||||
<url>https://api.bintray.com/maven/${bintray.repo}/${bintray.parent.package}</url>
|
||||
</repository>
|
||||
</distributionManagement>
|
||||
</project>
|
||||
@@ -0,0 +1,16 @@
|
||||
rootProject.name = 'moquette-parent'
|
||||
include ':moquette-broker'
|
||||
include ':distribution'
|
||||
include ':moquette-h2-storage'
|
||||
include ':moquette-mapdb-storage'
|
||||
include ':moquette-embedded-test'
|
||||
include ':moquette-osgi-test'
|
||||
include ':moquette-performance'
|
||||
|
||||
project(':moquette-broker').projectDir = "$rootDir/broker" as File
|
||||
project(':distribution').projectDir = "$rootDir/distribution" as File
|
||||
project(':moquette-embedded-test').projectDir = "$rootDir/embedding_moquette" as File
|
||||
project(':moquette-osgi-test').projectDir = "$rootDir/osgi_test" as File
|
||||
project(':moquette-performance').projectDir = "$rootDir/perf" as File
|
||||
project(':moquette-h2-storage').projectDir = "$rootDir/h2_storage" as File
|
||||
project(':moquette-mapdb-storage').projectDir = "$rootDir/mapdb_storage" as File
|
||||
Reference in New Issue
Block a user