You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wayang.apache.org by be...@apache.org on 2021/09/22 15:21:44 UTC

[incubator-wayang] 03/15: [WAYANG-28] template of javadoc to sniffer package

This is an automated email from the ASF dual-hosted git repository.

bertty pushed a commit to branch WAYANG-28
in repository https://gitbox.apache.org/repos/asf/incubator-wayang.git

commit e8d1d892da944b4fe76c140d8adafff1fbddcd6f
Author: Bertty Contreras-Rojas <be...@scalytics.io>
AuthorDate: Wed May 5 01:21:33 2021 -0400

    [WAYANG-28] template of javadoc to sniffer package
---
 .../plugin/hackit/core/sniffer/HackitSniffer.java  | 90 +++++++++++++++++++++-
 .../plugin/hackit/core/sniffer/actor/Actor.java    | 11 ++-
 .../hackit/core/sniffer/clone/BasicCloner.java     |  6 ++
 .../plugin/hackit/core/sniffer/clone/Cloner.java   | 16 +++-
 .../hackit/core/sniffer/inject/EmptyInjector.java  |  4 +
 .../hackit/core/sniffer/inject/Injector.java       | 26 ++++++-
 .../hackit/core/sniffer/shipper/PSProtocol.java    | 12 +++
 .../hackit/core/sniffer/shipper/Shipper.java       | 72 +++++++++++++++--
 .../sniffer/shipper/receiver/BufferReceiver.java   |  4 +
 .../sniffer/shipper/receiver/EmptyReceiver.java    |  4 +
 .../core/sniffer/shipper/receiver/Receiver.java    | 17 ++++
 .../core/sniffer/shipper/sender/EmptySender.java   |  8 +-
 .../hackit/core/sniffer/shipper/sender/Sender.java | 20 ++++-
 .../core/sniffer/sniff/CollectionTagsToSniff.java  | 18 +++++
 .../core/sniffer/sniff/SingleTagToSniff.java       | 15 ++++
 .../plugin/hackit/core/sniffer/sniff/Sniff.java    | 11 ++-
 16 files changed, 313 insertions(+), 21 deletions(-)

diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/HackitSniffer.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/HackitSniffer.java
index 02342ff..6740265 100644
--- a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/HackitSniffer.java
+++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/HackitSniffer.java
@@ -30,19 +30,75 @@ import java.io.Serializable;
 import java.util.Iterator;
 import java.util.function.Function;
 
-public class HackitSniffer<K, T, SentType, SenderObj extends Sender<SentType>, ReceiverObj extends Receiver<HackitTuple<K,T>> > implements Function<HackitTuple<K, T>, Iterator<HackitTuple<K, T>>>, Serializable {
-
+/**
+ *
+ * @param <K>
+ * @param <T>
+ * @param <SentType>
+ * @param <SenderObj>
+ * @param <ReceiverObj>
+ */
+public class
+    HackitSniffer<
+        K,
+        T,
+        SentType,
+        SenderObj extends Sender<SentType>,
+        ReceiverObj extends Receiver<HackitTuple<K,T>>
+    >
+    implements
+        Function<
+            HackitTuple<K, T>,
+            Iterator<HackitTuple<K, T>>
+        >,
+        Serializable {
+
+    /**
+     *
+     */
     private transient boolean not_first = false;
+
+    /**
+     *
+     */
     private Injector<HackitTuple<K, T>> hackItInjector;
 
+    /**
+     *
+     */
     private Actor<HackitTuple<K, T>> actorFunction;
 
+    /**
+     *
+     */
     private Shipper<HackitTuple<K, T>, SentType, SenderObj, ReceiverObj> shipper;
 
+    /**
+     *
+     */
     private Sniff<HackitTuple<K, T>> hackItSniff;
+
+    /**
+     *
+     */
     private Cloner<HackitTuple<K, T>, SentType> hackItCloner;
 
-    public HackitSniffer(Injector<HackitTuple<K, T>> hackItInjector, Actor<HackitTuple<K, T>> actorFunction, Shipper<HackitTuple<K, T>, SentType, SenderObj, ReceiverObj> shipper, Sniff<HackitTuple<K, T>> hackItSniff, Cloner<HackitTuple<K, T>, SentType> hackItCloner) {
+    /**
+     *
+     * @param hackItInjector
+     * @param actorFunction
+     * @param shipper
+     * @param hackItSniff
+     * @param hackItCloner
+     */
+    //TODO: it may private, because need to be executed just at the creation moment
+    public HackitSniffer(
+            Injector<HackitTuple<K, T>> hackItInjector,
+            Actor<HackitTuple<K, T>> actorFunction,
+            Shipper<HackitTuple<K, T>, SentType, SenderObj, ReceiverObj> shipper,
+            Sniff<HackitTuple<K, T>> hackItSniff,
+            Cloner<HackitTuple<K, T>, SentType> hackItCloner
+    ) {
         this.hackItInjector = hackItInjector;
         this.actorFunction = actorFunction;
         this.shipper = shipper;
@@ -51,6 +107,9 @@ public class HackitSniffer<K, T, SentType, SenderObj extends Sender<SentType>, R
         this.not_first = false;
     }
 
+    /**
+     * Default Construct, this get all the components from configuration files
+     */
     public HackitSniffer() {
         //TODO this over configuration file
         this.not_first = false;
@@ -76,26 +135,51 @@ public class HackitSniffer<K, T, SentType, SenderObj extends Sender<SentType>, R
         return this.hackItInjector.inject(ktHackItTuple, inyection);
     }
 
+    /**
+     *
+     * @param hackItInjector
+     * @return
+     */
     public HackitSniffer<K, T, SentType, SenderObj, ReceiverObj> setHackItInjector(Injector<HackitTuple<K, T>> hackItInjector) {
         this.hackItInjector = hackItInjector;
         return this;
     }
 
+    /**
+     *
+     * @param actorFunction
+     * @return
+     */
     public HackitSniffer<K, T, SentType, SenderObj, ReceiverObj> setActorFunction(Actor<HackitTuple<K, T>> actorFunction) {
         this.actorFunction = actorFunction;
         return this;
     }
 
+    /**
+     *
+     * @param shipper
+     * @return
+     */
     public HackitSniffer<K, T, SentType, SenderObj, ReceiverObj> setShipper(Shipper<HackitTuple<K, T>, SentType, SenderObj, ReceiverObj> shipper) {
         this.shipper = shipper;
         return this;
     }
 
+    /**
+     *
+     * @param hackItSniff
+     * @return
+     */
     public HackitSniffer<K, T, SentType, SenderObj, ReceiverObj> setHackItSniff(Sniff<HackitTuple<K, T>> hackItSniff) {
         this.hackItSniff = hackItSniff;
         return this;
     }
 
+    /**
+     *
+     * @param hackItCloner
+     * @return
+     */
     public HackitSniffer<K, T, SentType, SenderObj, ReceiverObj> setHackItCloner(Cloner<HackitTuple<K, T>, SentType> hackItCloner) {
         this.hackItCloner = hackItCloner;
         return this;
diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/actor/Actor.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/actor/Actor.java
index b49a7c4..0deffd8 100644
--- a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/actor/Actor.java
+++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/actor/Actor.java
@@ -19,7 +19,16 @@ package org.apache.wayang.plugin.hackit.core.sniffer.actor;
 
 import java.io.Serializable;
 
+/**
+ *
+ * @param <T>
+ */
 public interface Actor<T> extends Serializable {
 
-    public boolean is_sendout(T value);
+    /**
+     *
+     * @param value
+     * @return
+     */
+    boolean is_sendout(T value);
 }
diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/clone/BasicCloner.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/clone/BasicCloner.java
index c644e33..71c5255 100644
--- a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/clone/BasicCloner.java
+++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/clone/BasicCloner.java
@@ -21,7 +21,13 @@ import org.apache.commons.lang3.SerializationUtils;
 
 import java.io.Serializable;
 
+/**
+ * BasicClonner is just a basic implentation of {@link Cloner}
+ *
+ * @param <I> type of element to clone
+ */
 public class BasicCloner<I> implements Cloner<I, byte[]> {
+
     @Override
     public byte[] clone(I input) {
         return SerializationUtils.serialize((Serializable) input);
diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/clone/Cloner.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/clone/Cloner.java
index ccf99ab..74e2eb3 100644
--- a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/clone/Cloner.java
+++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/clone/Cloner.java
@@ -19,7 +19,21 @@ package org.apache.wayang.plugin.hackit.core.sniffer.clone;
 
 import java.io.Serializable;
 
+/**
+ * Cloner is the template for the functionality that take care about the clone phase
+ *
+ * @param <I> type of the element that it will get cloned
+ * @param <O> type of the element after cloning it, it possible that could be different
+ */
 public interface Cloner<I, O> extends Serializable {
 
-    public O clone(I input);
+    /**
+     * get <code>input</code> and create a clone, the output cloud be different
+     * to the original, this doesn't change the behavior it just a to reduce overhead
+     * in some case that is not need to have the same kind.
+     *
+     * @param input element to get cloned
+     * @return Clone of the <code>input</code> element
+     */
+    O clone(I input);
 }
diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/inject/EmptyInjector.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/inject/EmptyInjector.java
index 94d265f..cacca18 100644
--- a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/inject/EmptyInjector.java
+++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/inject/EmptyInjector.java
@@ -24,6 +24,10 @@ import java.util.Spliterator;
 import java.util.Spliterators;
 import java.util.stream.StreamSupport;
 
+/**
+ *
+ * @param <T>
+ */
 public class EmptyInjector<T> implements Injector<T>{
 
     @Override
diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/inject/Injector.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/inject/Injector.java
index 3ca4563..fb26604 100644
--- a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/inject/Injector.java
+++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/inject/Injector.java
@@ -20,11 +20,31 @@ package org.apache.wayang.plugin.hackit.core.sniffer.inject;
 import java.io.Serializable;
 import java.util.Iterator;
 
+/**
+ *
+ * @param <T>
+ */
 public interface Injector<T> extends Serializable {
 
-    public Iterator<T> inject(T element, Iterator<T> iterator);
+    /**
+     *
+     * @param element
+     * @param iterator
+     * @return
+     */
+    Iterator<T> inject(T element, Iterator<T> iterator);
 
-    public boolean is_skip_element(T element);
+    /**
+     *
+     * @param element
+     * @return
+     */
+    boolean is_skip_element(T element);
 
-    public boolean is_halt_job(T element);
+    /**
+     *
+     * @param element
+     * @return
+     */
+    boolean is_halt_job(T element);
 }
diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/PSProtocol.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/PSProtocol.java
index 6a19794..703074c 100644
--- a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/PSProtocol.java
+++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/PSProtocol.java
@@ -21,6 +21,18 @@ package org.apache.wayang.plugin.hackit.core.sniffer.shipper;
  * Publish and Subscribed Protocol
  */
 public interface PSProtocol {
+
+    /**
+     *
+     * @param topic
+     * @return
+     */
     public PSProtocol addTopic(String... topic);
+
+    /**
+     *
+     * @param exchange
+     * @return
+     */
     public PSProtocol addExchange(String exchange);
 }
diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/Shipper.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/Shipper.java
index 969d8e8..a9881af 100644
--- a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/Shipper.java
+++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/Shipper.java
@@ -23,15 +23,41 @@ import org.apache.wayang.plugin.hackit.core.sniffer.shipper.sender.Sender;
 import java.io.Serializable;
 import java.util.Iterator;
 
+/**
+ *
+ * @param <T>
+ * @param <ST>
+ * @param <SenderObj>
+ * @param <ReceiverObj>
+ */
 public abstract class Shipper<T, ST, SenderObj extends Sender<ST>, ReceiverObj extends Receiver<T>> implements Iterator<T>, Serializable {
 
+    /**
+     *
+     */
     protected Sender sender_instance;
+
+    /**
+     *
+     */
     protected Receiver receiver_instance;
 
+    /**
+     *
+     * @return
+     */
     protected abstract Sender createSenderInstance();
+
+    /**
+     *
+     * @return
+     */
     protected abstract Receiver createReceiverInstance();
 
-    /** Connect with the a Message queue service*/
+    /**
+     * Connect with the a Message queue service
+     * @param value
+     */
     public void publish(ST value){
         if(this.sender_instance == null){
             throw new RuntimeException("The Sender of the Shipper is not instanciated");
@@ -39,16 +65,27 @@ public abstract class Shipper<T, ST, SenderObj extends Sender<ST>, ReceiverObj e
         this.sender_instance.send(value);
     }
 
-    /** To subscribe as a producer */
+    /**
+     * To subscribe as a producer
+     */
     public void subscribeAsProducer(){
         this.sender_instance = this.createSenderInstance();
         this.sender_instance.init();
     }
 
+    /**
+     *
+     * @param topic
+     */
     public void subscribeAsProducer(String... topic){
         this.subscribeAsProducer("default", topic);
     }
 
+    /**
+     *
+     * @param metatopic
+     * @param topic
+     */
     public void subscribeAsProducer(String metatopic, String... topic){
         this.subscribeAsProducer();
         ((PSProtocol)this.sender_instance)
@@ -57,23 +94,37 @@ public abstract class Shipper<T, ST, SenderObj extends Sender<ST>, ReceiverObj e
         ;
     }
 
-    /** Close connection */
+    /**
+     * Close connection
+     */
     public void unsubscribeAsProducer(){
         if( this.sender_instance == null) return;
         this.sender_instance.close();
     }
 
-    /** To subscribe/unsubscribe as a consumer
+    /**
+     * To subscribe/unsubscribe as a consumer
      * metatopic correspond to EXCHANGE_NAME
      * topics correspond to bindingKeys
-     * */
+     */
     public void subscribeAsConsumer(){
         this.receiver_instance = this.createReceiverInstance();
         this.receiver_instance.init();
     }
+
+    /**
+     *
+     * @param topic
+     */
     public void subscribeAsConsumer(String... topic){
         this.subscribeAsProducer("default", topic);
     }
+
+    /**
+     *
+     * @param metatopic
+     * @param topic
+     */
     public void subscribeAsConsumer(String metatopic, String... topic){
         this.subscribeAsConsumer();
         ((PSProtocol)this.receiver_instance)
@@ -82,12 +133,17 @@ public abstract class Shipper<T, ST, SenderObj extends Sender<ST>, ReceiverObj e
         ;
     }
 
-    /** Close connection */
+    /**
+     * Close connection
+     */
     public void unsubscribeAsConsumer() {
         if( this.receiver_instance == null) return;
         this.receiver_instance.close();
     }
 
+    /**
+     *
+     */
     public void close(){
         this.unsubscribeAsConsumer();
         this.unsubscribeAsProducer();
@@ -99,6 +155,10 @@ public abstract class Shipper<T, ST, SenderObj extends Sender<ST>, ReceiverObj e
     @Override
     public abstract T next();
 
+    /**
+     *
+     * @return
+     */
     public Iterator<T> getNexts(){
         if( this.receiver_instance == null){
             throw new RuntimeException("The Receiver of the Shipper is not instanciated");
diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/receiver/BufferReceiver.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/receiver/BufferReceiver.java
index 0a93dae..a13cabb 100644
--- a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/receiver/BufferReceiver.java
+++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/receiver/BufferReceiver.java
@@ -21,6 +21,10 @@ import java.io.Serializable;
 import java.util.Queue;
 import java.util.concurrent.LinkedBlockingQueue;
 
+/**
+ *
+ * @param <T>
+ */
 public class BufferReceiver<T> implements Serializable {
     //TODO implement the doble buffering
     private transient Queue<T> queue;
diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/receiver/EmptyReceiver.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/receiver/EmptyReceiver.java
index 2bd42a7..fdfe139 100644
--- a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/receiver/EmptyReceiver.java
+++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/receiver/EmptyReceiver.java
@@ -21,6 +21,10 @@ package org.apache.wayang.plugin.hackit.core.sniffer.shipper.receiver;
 import java.util.Collections;
 import java.util.Iterator;
 
+/**
+ *
+ * @param <T>
+ */
 public class EmptyReceiver<T> extends Receiver<T> {
 
     @Override
diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/receiver/Receiver.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/receiver/Receiver.java
index dd120c0..80f9a9d 100644
--- a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/receiver/Receiver.java
+++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/receiver/Receiver.java
@@ -20,13 +20,30 @@ package org.apache.wayang.plugin.hackit.core.sniffer.shipper.receiver;
 import java.io.Serializable;
 import java.util.Iterator;
 
+/**
+ *
+ * @param <T>
+ */
 public abstract class Receiver<T> implements Serializable {
 
+    /**
+     *
+     */
     private transient BufferReceiver<T> bufferReceive;
 
+    /**
+     *
+     */
     public abstract void init();
 
+    /**
+     *
+     * @return
+     */
     public abstract Iterator<T> getElements();
 
+    /**
+     *
+     */
     public abstract void close();
 }
diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/sender/EmptySender.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/sender/EmptySender.java
index 6ac0817..1a2c459 100644
--- a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/sender/EmptySender.java
+++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/sender/EmptySender.java
@@ -18,12 +18,14 @@
 
 package org.apache.wayang.plugin.hackit.core.sniffer.shipper.sender;
 
+/**
+ *
+ * @param <T>
+ */
 public class EmptySender<T> implements Sender<T> {
 
     @Override
-    public void init() {
-
-    }
+    public void init() {}
 
     @Override
     public void send(T value) {}
diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/sender/Sender.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/sender/Sender.java
index 89eb57d..82a491c 100644
--- a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/sender/Sender.java
+++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/shipper/sender/Sender.java
@@ -19,11 +19,25 @@ package org.apache.wayang.plugin.hackit.core.sniffer.shipper.sender;
 
 import java.io.Serializable;
 
+/**
+ *
+ * @param <T>
+ */
 public interface Sender<T> extends Serializable {
 
-    public void init();
+    /**
+     *
+     */
+    void init();
 
-    public void send(T value);
+    /**
+     *
+     * @param value
+     */
+    void send(T value);
 
-    public void close();
+    /**
+     *
+     */
+    void close();
 }
diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/sniff/CollectionTagsToSniff.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/sniff/CollectionTagsToSniff.java
index a2811b0..16419db 100644
--- a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/sniff/CollectionTagsToSniff.java
+++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/sniff/CollectionTagsToSniff.java
@@ -23,18 +23,36 @@ import org.apache.wayang.plugin.hackit.core.tags.HackitTag;
 import java.util.HashSet;
 import java.util.Set;
 
+/**
+ *
+ */
 public class CollectionTagsToSniff implements Sniff {
 
+    /**
+     *
+     */
     public Set<HackitTag> tags2sniff;
 
+    /**
+     * Default Construct
+     */
     public CollectionTagsToSniff(){
         this.tags2sniff = new HashSet<>();
     }
 
+    /**
+     *
+     * @param tag
+     * @return
+     */
     public boolean sniff(HackitTag tag){
         return this.tags2sniff.contains(tag);
     }
 
+    /**
+     *
+     * @param tag
+     */
     public void addTag2sniff(HackitTag tag) {
         this.tags2sniff.add(tag);
     }
diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/sniff/SingleTagToSniff.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/sniff/SingleTagToSniff.java
index 9ce8ede..42da261 100644
--- a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/sniff/SingleTagToSniff.java
+++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/sniff/SingleTagToSniff.java
@@ -20,14 +20,29 @@ package org.apache.wayang.plugin.hackit.core.sniffer.sniff;
 
 import org.apache.wayang.plugin.hackit.core.tags.HackitTag;
 
+/**
+ *
+ */
 public class SingleTagToSniff implements Sniff {
 
+    /**
+     *
+     */
     public HackitTag tags2sniff;
 
+    /**
+     *
+     * @param tag
+     * @return
+     */
     public boolean sniff(HackitTag tag){
         return this.tags2sniff.equals(tag);
     }
 
+    /**
+     *
+     * @param tag
+     */
     public void addTag2sniff(HackitTag tag) {
         if(this.tags2sniff != null){
             throw new RuntimeException("The SingleTagToSniff already got the tag, if you need more of one tag use CollectionTagsToSniff class");
diff --git a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/sniff/Sniff.java b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/sniff/Sniff.java
index 44bfbbb..3a57c6f 100644
--- a/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/sniff/Sniff.java
+++ b/wayang-plugins/wayang-hackit/wayang-hackit-core/src/main/java/org/apache/wayang/plugin/hackit/core/sniffer/sniff/Sniff.java
@@ -19,7 +19,16 @@ package org.apache.wayang.plugin.hackit.core.sniffer.sniff;
 
 import java.io.Serializable;
 
+/**
+ *
+ * @param <I>
+ */
 public interface Sniff<I> extends Serializable {
 
-    public boolean sniff(I input);
+    /**
+     *
+     * @param input
+     * @return
+     */
+    boolean sniff(I input);
 }