diff --git a/.gitignore b/.gitignore index 6f63cb31..b998519d 100644 --- a/.gitignore +++ b/.gitignore @@ -8,4 +8,5 @@ client/target/ /parser_commons/target/netty_parser/target/ netty_parser/target/ parser_commons/target/ -/distribution/target/ \ No newline at end of file +/distribution/target/ +/bundle/target/ \ No newline at end of file diff --git a/bundle/pom.xml b/bundle/pom.xml new file mode 100644 index 00000000..58469191 --- /dev/null +++ b/bundle/pom.xml @@ -0,0 +1,116 @@ + + + + 4.0.0 + + + ../ + + moquette-parent + org.dna.mqtt + 0.5-SNAPSHOT + + moquette-bundle + + bundle + + + + Moquette - bundle + + + UTF-8 + + + + + org.slf4j + slf4j-api + 1.7.5 + + + org.apache.felix + org.osgi.core + 1.0.0 + + + org.apache.felix + org.osgi.compendium + 1.0.0 + + + org.dna.mqtt + moquette-broker + 0.5-SNAPSHOT + provided + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.5 + 1.5 + + + + + org.apache.felix + maven-bundle-plugin + 2.1.0 + true + + + org.dna.mqtt.commons + org.dna.mqtt.moquette.bundle, + ${project.groupId}.* + + + + * + * + + ${project.groupId}.moquette.bundle.Activator + + + + + + org.ops4j + maven-pax-plugin + 1.4 + + + 1.4.0 + + equinox + + + + + + + + + \ No newline at end of file diff --git a/bundle/src/main/java/org/dna/mqtt/moquette/bundle/Activator.java b/bundle/src/main/java/org/dna/mqtt/moquette/bundle/Activator.java new file mode 100644 index 00000000..b44f9b2b --- /dev/null +++ b/bundle/src/main/java/org/dna/mqtt/moquette/bundle/Activator.java @@ -0,0 +1,30 @@ +package org.dna.mqtt.moquette.bundle; + +import org.dna.mqtt.moquette.server.Server; +import org.osgi.framework.BundleActivator; +import org.osgi.framework.BundleContext; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * Start and stop a configured version of the MQTT broker server. + * + * @author Didier Donsez + * @todo add config admin for port (in NettyAcceptor) + */ +public class Activator implements BundleActivator { + + private static final Logger LOG = LoggerFactory.getLogger(Server.class); + private Server server = null; + + public void start(BundleContext bundleContext) throws Exception { + server = new Server(); + server.startServer(); + LOG.info("Moquette MQTT broker started, version 0.5-SNAPSHOT"); + } + + public void stop(BundleContext bundleContext) throws Exception { + server.stopServer(); + LOG.info("Moquette MQTT broker stopped, version 0.5-SNAPSHOT"); + } +} diff --git a/pom.xml b/pom.xml index 44c5b19b..cd1a1d1c 100644 --- a/pom.xml +++ b/pom.xml @@ -20,6 +20,7 @@ netty_parser broker distribution + bundle