public class EP extends Object
| 限定符和类型 | 字段和说明 |
|---|---|
protected Executor |
exec |
protected org.slf4j.Logger |
log |
protected Map<String,List<Listener>> |
lsMap
事件名 -> 监听器
Listener |
protected Pattern |
p |
protected Set<String> |
trackEvents
需要追踪执行的事件名字
|
| 限定符和类型 | 方法和说明 |
|---|---|
EP |
addListenerSource(Object source)
添加对象源(解析出监听器)
|
EP |
addTrackEvent(String... eNames)
设置某个事件需要追踪执行
|
EP |
delTrackEvent(String... eNames)
删除事件追踪
|
Set<String> |
events()
所有事件名
|
boolean |
exist(String... eNames)
是否存在事件监听器
|
protected Method |
findMethod(Class clz,
Predicate<Method> predicate) |
Object |
fire(EC ec) |
Object |
fire(EC ec,
List<Listener> ls)
发布事件到各个监听者并执行
|
Object |
fire(EC ec,
Listener... ls) |
Object |
fire(String eName)
|
Object |
fire(String eName,
Consumer<EC> completeFn,
Object... args)
|
Object |
fire(String eName,
Object... args)
|
EP |
fireAsync(String eName)
强制异步
fire(EC) |
EP |
fireAsync(String eName,
Consumer<EC> completeFn,
Object... args)
强制异步
fire(EC) |
EP |
fireAsync(String eName,
Object... args)
强制异步
fire(EC) |
EP |
fireAsyncDebug(String eName)
强制异步
fire(EC) |
EP |
fireAsyncDebug(String eName,
Consumer<EC> completeFn,
Object... args)
强制异步
fire(EC) |
EP |
fireAsyncDebug(String eName,
Object... args)
强制异步
fire(EC) |
Object |
fireDebug(String eName)
|
Object |
fireDebug(String eName,
Consumer<EC> completeFn,
Object... args)
|
Object |
fireDebug(String eName,
Object... args)
|
Object |
fireSync(String eName)
|
Object |
fireSync(String eName,
Object... args)
强制同步
fire(EC) |
Object |
fireSyncDebug(String eName)
|
Object |
fireSyncDebug(String eName,
Object... args)
强制同步
fire(EC) |
protected List<Listener> |
getListeners(String eName)
获取 或 创建 监听器
|
protected void |
init(Executor exec,
org.slf4j.Logger log)
初始化
|
protected void |
iterateMethod(Class clz,
Consumer<Method>... fns) |
EP |
listen(String eName,
BiFunction fn)
添加监听
|
EP |
listen(String eName,
boolean async,
BiFunction fn)
添加监听
|
EP |
listen(String eName,
boolean async,
float order,
int limit,
BiFunction fn)
添加监听
|
EP |
listen(String eName,
boolean async,
float order,
int limit,
Function fn)
添加监听
|
EP |
listen(String eName,
boolean async,
float order,
int limit,
Runnable fn)
添加监听
|
EP |
listen(String eName,
boolean async,
Function fn)
添加监听
|
EP |
listen(String eName,
boolean async,
Runnable fn)
添加监听
|
EP |
listen(String eName,
Function fn)
添加监听
|
EP |
listen(String eName,
Runnable fn)
添加监听
|
protected String |
parseName(String name,
Object source)
支持表达式 {attr}.eventName, {attr}会被替换成 对象中的属性attr的值
|
EP |
removeEvent(String eName)
移除事件对应的所有监听器
|
EP |
removeEvent(String eName,
Object source)
只删除指定对象源中的事件监听
|
EP |
removeSourceAllEvent(Object source)
移除对象源的所有监听器
|
protected void |
resolve(Object source)
|
protected void |
sort(List<Listener> ls)
监听器排序
|
public EP()
public EP(Executor exec)
public EP(Executor exec, org.slf4j.Logger log)
protected void init(Executor exec, org.slf4j.Logger log)
exec - 线程池public Object fire(String eName, Consumer<EC> completeFn, Object... args)
eName - 事件名completeFn - 事件结束回调args - 监听器方法的参数列表public Object fireDebug(String eName, Consumer<EC> completeFn, Object... args)
eName - 事件名completeFn - 事件结束回调args - 监听器方法的参数列表public Object fireSync(String eName, Object... args)
fire(EC)eName - 事件名args - 监听器方法的参数列表public Object fireSyncDebug(String eName, Object... args)
fire(EC)eName - 事件名args - 监听器方法的参数列表public EP fireAsync(String eName, Object... args)
fire(EC)eName - 事件名args - 监听器方法的参数列表public EP fireAsyncDebug(String eName, Object... args)
fire(EC)eName - 事件名args - 监听器方法的参数列表public EP fireAsync(String eName, Consumer<EC> completeFn, Object... args)
fire(EC)eName - 事件名completeFn - 事件结束回调args - 监听器方法的参数列表public EP fireAsyncDebug(String eName, Consumer<EC> completeFn, Object... args)
fire(EC)eName - 事件名completeFn - 事件结束回调args - 监听器方法的参数列表public Object fire(EC ec, List<Listener> ls)
ec - EC 事件执行过程上下文public boolean exist(String... eNames)
eNames - 事件名public EP removeEvent(String eName, Object source)
eName - 事件名source - 监听器对象源EPpublic EP removeSourceAllEvent(Object source)
source - 监听器对象源EPpublic EP listen(String eName, boolean async, float order, int limit, Runnable fn)
eName - 事件名async - 是否异步order - 执行顺序, 越小越先执行limit - 执行次数限制. <=0 不限制fn - 函数EPpublic EP listen(String eName, boolean async, float order, int limit, Function fn)
eName - 事件名async - 是否异步order - 执行顺序, 越小越先执行limit - 执行次数限制 <=0 不限制fn - 函数EPpublic EP listen(String eName, boolean async, float order, int limit, BiFunction fn)
eName - 事件名async - 是否异步order - 执行顺序, 越小越先执行limit - 执行次数限制. <=0 不限制fn - 函数EPpublic EP listen(String eName, boolean async, Runnable fn)
eName - 事件名async - 是否异步fn - 函数EPpublic EP listen(String eName, boolean async, Function fn)
eName - 事件名async - 是否异步fn - 函数EPpublic EP listen(String eName, BiFunction fn)
eName - 事件名fn - 函数EPpublic EP listen(String eName, boolean async, BiFunction fn)
eName - 事件名async - 是否异步fn - 函数EPprotected void resolve(Object source)
source - 事件源protected String parseName(String name, Object source)
name - 事件名source - 事件源Copyright © 2024. All rights reserved.