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