mirror of
https://github.com/LamGC/Oracle-Sentry.git
synced 2025-04-29 22:27:34 +00:00
feat: 添加方法协助脚本确认自身是否已经初始化完成.
添加 isInitialed 方法, 帮助脚本判断自己是否已经被哨兵初始化完成.
This commit is contained in:
parent
69def56d91
commit
166c63fb93
@ -7,10 +7,6 @@ import net.lamgc.oracle.sentry.script.ScriptInfo;
|
|||||||
import net.lamgc.oracle.sentry.script.groovy.trigger.GroovyTrigger;
|
import net.lamgc.oracle.sentry.script.groovy.trigger.GroovyTrigger;
|
||||||
import org.codehaus.groovy.runtime.DefaultGroovyMethods;
|
import org.codehaus.groovy.runtime.DefaultGroovyMethods;
|
||||||
|
|
||||||
import java.util.HashSet;
|
|
||||||
import java.util.Set;
|
|
||||||
import java.util.concurrent.atomic.AtomicBoolean;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Groovy DSL 脚本的父类.
|
* Groovy DSL 脚本的父类.
|
||||||
* @author LamGC
|
* @author LamGC
|
||||||
@ -31,6 +27,7 @@ public class GroovyDslDelegate implements Script {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 注册触发器.
|
* 注册触发器.
|
||||||
|
* <p> 注意: 如果脚本尚未初始化完成, 将无法注册触发器, 可通过 {@link #isInitialed()} 检查是否已经完成初始化.
|
||||||
* @param triggerName 触发器名称.
|
* @param triggerName 触发器名称.
|
||||||
* @param closure 待执行闭包.
|
* @param closure 待执行闭包.
|
||||||
*/
|
*/
|
||||||
@ -54,4 +51,12 @@ public class GroovyDslDelegate implements Script {
|
|||||||
public ScriptInfo getScriptInfo() {
|
public ScriptInfo getScriptInfo() {
|
||||||
return scriptInfo;
|
return scriptInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 检查脚本当前是否已经初始化完成.
|
||||||
|
* @return 如果脚本已经初始化, 本方法将返回 {@code true}.
|
||||||
|
*/
|
||||||
|
public final boolean isInitialed() {
|
||||||
|
return scriptLoader.isInitialed(this);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user