diff options
Diffstat (limited to 'calamus-engine/src/main/java/io/trygvis/engine/NexusNewArtifactMessageListener.java')
-rw-r--r-- | calamus-engine/src/main/java/io/trygvis/engine/NexusNewArtifactMessageListener.java | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/calamus-engine/src/main/java/io/trygvis/engine/NexusNewArtifactMessageListener.java b/calamus-engine/src/main/java/io/trygvis/engine/NexusNewArtifactMessageListener.java new file mode 100644 index 0000000..f3f9f05 --- /dev/null +++ b/calamus-engine/src/main/java/io/trygvis/engine/NexusNewArtifactMessageListener.java @@ -0,0 +1,58 @@ +package io.trygvis.engine; + +import org.kie.internal.runtime.StatefulKnowledgeSession; +import org.slf4j.Logger; + +import javax.jms.JMSException; +import javax.jms.Message; +import javax.jms.MessageListener; +import javax.jms.TextMessage; +import java.io.IOException; +import java.io.StringReader; +import java.util.Properties; + +import static org.slf4j.LoggerFactory.getLogger; + +public class NexusNewArtifactMessageListener implements MessageListener { + private final Logger log = getLogger(getClass()); + + private final StatefulKnowledgeSession session; + + public NexusNewArtifactMessageListener(StatefulKnowledgeSession session) { + this.session = session; + } + + @Override + public void onMessage(Message message) { + System.out.println("NexusNewArtifactMessageListener.onMessage"); + + System.out.println("message.getClass() = " + message.getClass()); + if (!(message instanceof TextMessage)) { + return; + } + + try { + TextMessage m = (TextMessage) message; + Properties p = new Properties(); + p.load(new StringReader(m.getText())); + + String repository = p.getProperty("repository"); + String groupId = p.getProperty("groupId"); + String artifactId = p.getProperty("artifactId"); + String version = p.getProperty("version"); + String classifier = p.getProperty("classifier"); + String extension = p.getProperty("extension"); + + log.info("New artifact: groupId={}, artifactId={}, version={}, classifier={}, extension={}", groupId, artifactId, version, classifier, extension); + + /* + String type; + Object event; + long processInstanceId; + jbpm.signalEvent(type, event, processInstanceId); + */ + } catch (JMSException | IOException e) { + e.printStackTrace(); + } + } +} |