diff --git a/README.md b/README.md index 47821b70..1b672aa9 100644 --- a/README.md +++ b/README.md @@ -44,6 +44,7 @@ Currently the following components are supported with more being added over time - WebSocket 1.1 (Jetty) - Bean Validation 1.1 (RI Hibernate validator) - JTA 1.2 (Narayana) +- JMS 2.0.1 (ActiveMQ) ## Additional features @@ -208,6 +209,12 @@ To choose your Java EE components with fine grain control include them as your d com.kumuluz.ee kumuluzee-jta-narayana + + + + com.kumuluz.ee + kumuluzee-jms-activemq + ``` To choose your KumuluzEE extensions include them as your dependencies. You can find the available implementations and options at their respected project pages. diff --git a/bom/pom.xml b/bom/pom.xml index 03482c5a..29847a59 100644 --- a/bom/pom.xml +++ b/bom/pom.xml @@ -98,6 +98,11 @@ kumuluzee-jta-narayana ${project.version} + + com.kumuluz.ee + kumuluzee-jms-activemq + ${project.version} + diff --git a/common/src/main/java/com/kumuluz/ee/common/dependencies/EeComponentType.java b/common/src/main/java/com/kumuluz/ee/common/dependencies/EeComponentType.java index 6679d486..a17a60fc 100644 --- a/common/src/main/java/com/kumuluz/ee/common/dependencies/EeComponentType.java +++ b/common/src/main/java/com/kumuluz/ee/common/dependencies/EeComponentType.java @@ -54,7 +54,9 @@ public enum EeComponentType { BATCH("Batch"), - MAIL("JavaMail"); + MAIL("JavaMail"), + + JMS("JMS"); private final String name; diff --git a/components/jms/activemq/pom.xml b/components/jms/activemq/pom.xml new file mode 100644 index 00000000..cb0f2cf8 --- /dev/null +++ b/components/jms/activemq/pom.xml @@ -0,0 +1,35 @@ + + + + kumuluzee-jms + com.kumuluz.ee + 2.5.0-SNAPSHOT + + 4.0.0 + + kumuluzee-jms-activemq + + KumuluzEE JMS ActiveMQ + KumuluzEE JMS component implemented by ActiveMQ (Apache Software Foundation) + + + + com.kumuluz.ee + kumuluzee-common + + + + javax.jms + javax.jms-api + + + + org.apache.activemq + activemq-client + ${activemq.version} + + + + \ No newline at end of file diff --git a/components/jms/activemq/src/main/java/com/kumuluz/ee/jms/activemq/JmsComponent.java b/components/jms/activemq/src/main/java/com/kumuluz/ee/jms/activemq/JmsComponent.java new file mode 100644 index 00000000..0a4c62d9 --- /dev/null +++ b/components/jms/activemq/src/main/java/com/kumuluz/ee/jms/activemq/JmsComponent.java @@ -0,0 +1,31 @@ +package com.kumuluz.ee.jms.activemq; + +import com.kumuluz.ee.common.Component; +import com.kumuluz.ee.common.config.EeConfig; +import com.kumuluz.ee.common.dependencies.EeComponentDef; +import com.kumuluz.ee.common.dependencies.EeComponentType; +import com.kumuluz.ee.common.wrapper.KumuluzServerWrapper; + +import java.util.logging.Logger; + +/** + * @author Dejan Ognjenović + * @since 2.5.0 + */ +@EeComponentDef(name = "ActiveMQ", type = EeComponentType.JMS) +public class JmsComponent implements Component { + + private Logger log = Logger.getLogger(JmsComponent.class.getSimpleName()); + + @Override + public void init(KumuluzServerWrapper server, EeConfig eeConfig) { + + } + + @Override + public void load() { + + log.info("Initiating ActiveMQ"); + } + +} diff --git a/components/jms/activemq/src/main/resources/META-INF/services/com.kumuluz.ee.common.Component b/components/jms/activemq/src/main/resources/META-INF/services/com.kumuluz.ee.common.Component new file mode 100644 index 00000000..19defb27 --- /dev/null +++ b/components/jms/activemq/src/main/resources/META-INF/services/com.kumuluz.ee.common.Component @@ -0,0 +1 @@ +com.kumuluz.ee.jms.activemq.JmsComponent \ No newline at end of file diff --git a/components/jms/pom.xml b/components/jms/pom.xml new file mode 100644 index 00000000..49c17ea3 --- /dev/null +++ b/components/jms/pom.xml @@ -0,0 +1,22 @@ + + + + kumuluzee-components + com.kumuluz.ee + 2.5.0-SNAPSHOT + + 4.0.0 + + pom + kumuluzee-jms + + KumuluzEE JMS + KumuluzEE JMS component + + + activemq + + + \ No newline at end of file diff --git a/components/pom.xml b/components/pom.xml index 954ee0c0..baff2162 100644 --- a/components/pom.xml +++ b/components/pom.xml @@ -26,6 +26,7 @@ jax-ws ejb jta + jms kumuluzee-components diff --git a/pom.xml b/pom.xml index 197774bf..3453ebec 100644 --- a/pom.xml +++ b/pom.xml @@ -47,6 +47,7 @@ 1.0 3.2 1.2 + 2.0.1 2.0.3.Final 3.3.0.Final @@ -75,6 +76,7 @@ 9.4.6.v20170531 5.6.4.Final 7.6.0.Final + 5.15.2 @@ -281,6 +283,16 @@ ${project.version} pom + + com.kumuluz.ee + kumuluzee-jms + ${project.version} + + + com.kumuluz.ee + kumuluzee-jms-activemq + ${project.version} + com.kumuluz.ee kumuluzee-profiles @@ -386,6 +398,11 @@ javax.transaction-api ${jta.version} + + javax.jms + javax.jms-api + ${jms.version} +