package com.github.blackrush.acara;

import org.fungsi.concurrent.Future;

public abstract class Listener {
    /**
     *
     * @return
     */
    public abstract EventMetadata getHandledEvent();

    /**
     * Immediately dispatch an event.
     * @param event a non-null event
     * @return the pending response
     */
    public abstract Future<Object> dispatch(Object event);
}

@@ -66,16 +66,53 @@
 .Future;
+%0Aimport org.fungsi.concurrent.Worker;
 %0A%0Apublic
@@ -152,31 +152,111 @@
 *%0A     *
-%0A     * @return
+ A Listener handles one and only one type of event%0A     * @return the non-null event's metadata
 %0A     */
@@ -389,24 +389,63 @@
 -null event%0A
+     * @param worker a non-null worker%0A
      * @retu
@@ -468,32 +468,32 @@
 esponse%0A     */%0A
-
     public abstr
@@ -532,13 +532,28 @@
 ct event
+, Worker worker
 );%0A%7D%0A

Improve Javadoc & Give a worker when dispatching a Listener