This is an automated email from the ASF dual-hosted git repository. bertty pushed a commit to branch debugger in repository https://gitbox.apache.org/repos/asf/incubator-wayang.git
commit 09dc2c9708465cfa7135f35e59660c0b6faa255a Author: Bertty Contreras-Rojas <[email protected]> AuthorDate: Mon Apr 5 23:52:19 2021 -0400 [WAYANG-28] Add Basic tags --- .../wayang/plugin/hackit/core/tags/CrashTag.java | 43 +++++++++++++++++++++ .../wayang/plugin/hackit/core/tags/DebugTag.java | 43 +++++++++++++++++++++ .../wayang/plugin/hackit/core/tags/DisplayTag.java | 42 +++++++++++++++++++++ .../wayang/plugin/hackit/core/tags/HackitTag.java | 44 ++++++++++++++++++++++ .../plugin/hackit/core/tags/HackitTagBuilder.java | 5 +++ .../wayang/plugin/hackit/core/tags/LogTag.java | 42 +++++++++++++++++++++ .../wayang/plugin/hackit/core/tags/PauseTag.java | 42 +++++++++++++++++++++ .../wayang/plugin/hackit/core/tags/SkipTag.java | 42 +++++++++++++++++++++ .../wayang/plugin/hackit/core/tags/TraceTag.java | 42 +++++++++++++++++++++ 9 files changed, 345 insertions(+) diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/CrashTag.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/CrashTag.java new file mode 100644 index 0000000..af0545c --- /dev/null +++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/CrashTag.java @@ -0,0 +1,43 @@ +package org.apache.wayang.plugin.hackit.core.tags; + +public class CrashTag extends HackitTag { + + private static CrashTag seed = null; + + private CrashTag(){ + super(); + } + + @Override + public boolean isSendOut() { + return false; + } + + @Override + public boolean isSkip() { + return false; + } + + @Override + public boolean isHaltJob() { + return false; + } + + @Override + public boolean hasCallback() { + return false; + } + + @Override + public HackitTag getInstance() { + if(seed == null){ + seed = new CrashTag(); + } + return seed; + } + + @Override + public int hashCode() { + return 1; + } +} diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/DebugTag.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/DebugTag.java new file mode 100644 index 0000000..2595ef3 --- /dev/null +++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/DebugTag.java @@ -0,0 +1,43 @@ +package org.apache.wayang.plugin.hackit.core.tags; + +public class DebugTag extends HackitTag { + + private static DebugTag seed = null; + + private DebugTag(){ + super(); + } + + @Override + public boolean isSendOut() { + return false; + } + + @Override + public boolean isSkip() { + return false; + } + + @Override + public boolean isHaltJob() { + return false; + } + + @Override + public boolean hasCallback() { + return false; + } + + @Override + public HackitTag getInstance() { + if(seed == null){ + seed = new DebugTag(); + } + return seed; + } + + @Override + public int hashCode() { + return 2; + } +} diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/DisplayTag.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/DisplayTag.java new file mode 100644 index 0000000..da85754 --- /dev/null +++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/DisplayTag.java @@ -0,0 +1,42 @@ +package org.apache.wayang.plugin.hackit.core.tags; + +public class DisplayTag extends HackitTag { + private static DisplayTag seed = null; + + private DisplayTag(){ + super(); + } + + @Override + public boolean isSendOut() { + return false; + } + + @Override + public boolean isSkip() { + return false; + } + + @Override + public boolean isHaltJob() { + return false; + } + + @Override + public boolean hasCallback() { + return false; + } + + @Override + public HackitTag getInstance() { + if(seed == null){ + seed = new DisplayTag(); + } + return seed; + } + + @Override + public int hashCode() { + return 3; + } +} diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/HackitTag.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/HackitTag.java new file mode 100644 index 0000000..87a7258 --- /dev/null +++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/HackitTag.java @@ -0,0 +1,44 @@ +package org.apache.wayang.plugin.hackit.core.tags; + +import org.apache.wayang.plugin.hackit.core.action.ActionGroup; +import org.apache.wayang.plugin.hackit.core.tagger.TaggerFunction; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +public abstract class HackitTag implements Serializable, ActionGroup { + + private List<TaggerFunction<?>> callbacks; + private Map<String, Object> callback_results; + + protected HackitTag(){ + this.callbacks = new ArrayList<>(); + this.callback_results = new HashMap<>(); + } + + public void callback(){ + if(hasCallback()) { + this.callbacks.stream().forEach( + fun -> this.addValue(fun.getName(), fun.execute()) + ); + } + } + public void addValue(String name, Object value){ + this.callback_results.put(name, value); + } + + public abstract HackitTag getInstance(); + + @Override + public boolean equals(Object obj) { + return this.getClass().equals(obj.getClass()); + } + + @Override + public int hashCode() { + return 0; + } +} diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/HackitTagBuilder.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/HackitTagBuilder.java new file mode 100644 index 0000000..57bbd6b --- /dev/null +++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/HackitTagBuilder.java @@ -0,0 +1,5 @@ +package org.apache.wayang.plugin.hackit.core.tags; + +public class HackitTagBuilder { + //TODO check how to implement wildfly +} diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/LogTag.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/LogTag.java new file mode 100644 index 0000000..0c149ac --- /dev/null +++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/LogTag.java @@ -0,0 +1,42 @@ +package org.apache.wayang.plugin.hackit.core.tags; + +public class LogTag extends HackitTag { + private static LogTag seed = null; + + public LogTag(){ + super(); + } + + @Override + public boolean isSendOut() { + return false; + } + + @Override + public boolean isSkip() { + return false; + } + + @Override + public boolean isHaltJob() { + return false; + } + + @Override + public boolean hasCallback() { + return false; + } + + @Override + public HackitTag getInstance() { + if(seed == null){ + seed = new LogTag(); + } + return seed; + } + + @Override + public int hashCode() { + return 4; + } +} diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/PauseTag.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/PauseTag.java new file mode 100644 index 0000000..4048277 --- /dev/null +++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/PauseTag.java @@ -0,0 +1,42 @@ +package org.apache.wayang.plugin.hackit.core.tags; + +public class PauseTag extends HackitTag { + private static PauseTag seed = null; + + private PauseTag(){ + super(); + } + + @Override + public boolean isSendOut() { + return false; + } + + @Override + public boolean isSkip() { + return false; + } + + @Override + public boolean isHaltJob() { + return false; + } + + @Override + public boolean hasCallback() { + return false; + } + + @Override + public HackitTag getInstance() { + if(seed == null){ + seed = new PauseTag(); + } + return seed; + } + + @Override + public int hashCode() { + return 5; + } +} diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/SkipTag.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/SkipTag.java new file mode 100644 index 0000000..41ddf06 --- /dev/null +++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/SkipTag.java @@ -0,0 +1,42 @@ +package org.apache.wayang.plugin.hackit.core.tags; + +public class SkipTag extends HackitTag { + private static SkipTag seed = null; + + private SkipTag(){ + super(); + } + + @Override + public boolean isSendOut() { + return false; + } + + @Override + public boolean isSkip() { + return false; + } + + @Override + public boolean isHaltJob() { + return false; + } + + @Override + public boolean hasCallback() { + return false; + } + + @Override + public HackitTag getInstance() { + if(seed == null){ + seed = new SkipTag(); + } + return seed; + } + + @Override + public int hashCode() { + return 6; + } +} diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/TraceTag.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/TraceTag.java new file mode 100644 index 0000000..4b15a25 --- /dev/null +++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/tags/TraceTag.java @@ -0,0 +1,42 @@ +package org.apache.wayang.plugin.hackit.core.tags; + +public class TraceTag extends HackitTag { + private static TraceTag seed = null; + + private TraceTag(){ + super(); + } + + @Override + public boolean isSendOut() { + return false; + } + + @Override + public boolean isSkip() { + return false; + } + + @Override + public boolean isHaltJob() { + return false; + } + + @Override + public boolean hasCallback() { + return false; + } + + @Override + public HackitTag getInstance() { + if(seed == null){ + seed = new TraceTag(); + } + return seed; + } + + @Override + public int hashCode() { + return 7; + } +}
