From 70d0aae64c2605302f25871ab048e9e7099673eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Scheppler?= Date: Thu, 13 Sep 2018 09:44:27 +0200 Subject: [PATCH] Kapitel 5 --- .../delegates/NotifyEmployeeDelegate.java | 54 +++++++++++++++++++ .../delegates/SendTweetDelegate.java | 30 +++++++++++ src/main/resources/twitter-review.bpmn | 40 +++++++------- 3 files changed, 104 insertions(+), 20 deletions(-) create mode 100644 src/main/java/ch/zhaw/gpi/twitterreview/delegates/NotifyEmployeeDelegate.java create mode 100644 src/main/java/ch/zhaw/gpi/twitterreview/delegates/SendTweetDelegate.java diff --git a/src/main/java/ch/zhaw/gpi/twitterreview/delegates/NotifyEmployeeDelegate.java b/src/main/java/ch/zhaw/gpi/twitterreview/delegates/NotifyEmployeeDelegate.java new file mode 100644 index 0000000..cd66349 --- /dev/null +++ b/src/main/java/ch/zhaw/gpi/twitterreview/delegates/NotifyEmployeeDelegate.java @@ -0,0 +1,54 @@ +package ch.zhaw.gpi.twitterreview.delegates; + +import javax.inject.Named; +import org.camunda.bpm.engine.delegate.DelegateExecution; +import org.camunda.bpm.engine.delegate.JavaDelegate; + +/** + * Implementation des Send Task "Mitarbeiter benachrichtigen" + * + * @author scep + */ +@Named("notifyEmployeeAdapter") +public class NotifyEmployeeDelegate implements JavaDelegate { + + /** + * Mockt das Senden einer Benachrichtigung per Mail + * + * 1. Die benötigten Prozessvariablen auslesen + * 2. Die E-Mail-Nachricht zusammenstellen + * 3. Die E-Mail in der Konsole ausgeben + * + * @param de + * @throws Exception + */ + @Override + public void execute(DelegateExecution de) throws Exception { + // Prozessvariablen auslesen + String email = (String) de.getVariable("email"); + String tweetContent = (String) de.getVariable("tweetContent"); + String checkResult = (String) de.getVariable("checkResult"); + String checkResultComment = (String) de.getVariable("checkResultComment"); + + // Die E-Mail-Nachricht zusammenbauen + String mailHauptteil; + if(checkResult.equals("rejected")){ + mailHauptteil = "Leider wurde diese Tweet-Anfrage abgelehnt mit " + + "folgender Begründung:\n" + checkResultComment; + } else { + mailHauptteil = "Dein Tweet wurde geposted. Herzlichen Dank für Deinen Beitrag."; + } + + // Mail-Text zusammenbauen + String mailBody = "Hallo Mitarbeiter\n\n" + "Du hast folgenden Text zum " + + "Veröffentlichen als Tweet vorgeschlagen:\n" + tweetContent + "\n\n" + + mailHauptteil + "\n\n" + "Deine Kommunikationsabteilung"; + + // Mail in Konsole ausgeben + System.out.println("########### BEGIN MAIL ##########################"); + System.out.println("############################### Mail-Empfänger: " + email); + System.out.println(mailBody); + System.out.println("########### END MAIL ############################"); + } + +} diff --git a/src/main/java/ch/zhaw/gpi/twitterreview/delegates/SendTweetDelegate.java b/src/main/java/ch/zhaw/gpi/twitterreview/delegates/SendTweetDelegate.java new file mode 100644 index 0000000..2029b2c --- /dev/null +++ b/src/main/java/ch/zhaw/gpi/twitterreview/delegates/SendTweetDelegate.java @@ -0,0 +1,30 @@ +package ch.zhaw.gpi.twitterreview.delegates; + +import javax.inject.Named; +import org.camunda.bpm.engine.delegate.DelegateExecution; +import org.camunda.bpm.engine.delegate.JavaDelegate; + +/** + * Implementation des Service Task "Tweet senden" + * + * @author scep + */ +@Named("sendTweetAdapter") +public class SendTweetDelegate implements JavaDelegate { + + /** + * Mockt das Senden eines Tweeets + * + * 1. Die Prozessvariable tweetContent wird ausgelesen + * 2. Dieser Text wird in der Console ausgegeben + * + * @param de Objekt, welches die Verknüpfung zur Process Engine und zur aktuellen Execution enthält + * @throws Exception + */ + @Override + public void execute(DelegateExecution de) throws Exception { + String tweetContent = (String) de.getVariable("tweetContent"); + System.out.println("!!!!!!!!!!!!!!!! Folgender Tweet wird veröffentlicht: " + tweetContent); + } + +} diff --git a/src/main/resources/twitter-review.bpmn b/src/main/resources/twitter-review.bpmn index 4660fed..4f23d53 100644 --- a/src/main/resources/twitter-review.bpmn +++ b/src/main/resources/twitter-review.bpmn @@ -17,9 +17,9 @@ ExclusiveGateway_0fj9kmh TweetAnfrageBehandelt Pruefergebnis + MitarbeiterKuerzelExtrahieren TweetSenden MitarbeiterBenachrichtigen - MitarbeiterKuerzelExtrahieren @@ -51,19 +51,6 @@ SequenceFlow_0wkf2cr - - - - - - - Genehmigt - SequenceFlow_13w0jnd - - - SequenceFlow_0akgqts - SequenceFlow_0wkf2cr - @@ -110,6 +97,19 @@ emailAdress = execution.getVariable("email"); execution.setVariable("alias", emailAdress.substring(0,4)); + + + + + + + Genehmigt + SequenceFlow_13w0jnd + + + SequenceFlow_0akgqts + SequenceFlow_0wkf2cr + @@ -200,12 +200,6 @@ execution.setVariable("alias", emailAdress.substring(0,4)); - - - - - - @@ -227,6 +221,12 @@ execution.setVariable("alias", emailAdress.substring(0,4)); + + + + + +