public abstract class ScriptClassProvider<T extends IScript> extends StaticScriptClassFactory<T>
StaticScriptClassFactory.StaticScriptRegister| 限定符和类型 | 字段和说明 |
|---|---|
protected boolean |
autoReload
是否自动重载变更代码
|
protected IClassProvider |
classProvider
脚本库目录
|
_log, staticCodeMap| 限定符 | 构造器和说明 |
|---|---|
protected |
ScriptClassProvider(ClassSource classSource,
boolean autoReload) |
protected |
ScriptClassProvider(IClassProvider classProvider) |
| 限定符和类型 | 方法和说明 |
|---|---|
T |
buildInstance(int code)
创建一个脚本实例
|
T |
buildInstance(int code,
Object... args)
创建一个脚本实例
|
protected <C> C |
getInstacne(Class<C> clazz) |
Set<Integer> |
getRegistCode() |
protected Class<? extends T> |
getScriptClass(int code) |
IClassProvider.State |
getState() |
boolean |
hasCode(int code) |
protected boolean |
isAbstractOrInterface(Class<?> clazz) |
boolean |
isAutoReload() |
protected void |
load()
加载
|
protected void |
onScriptLoaded(Set<Class<?>> loadedClasses)
当脚本加载完成后调用此方法,子类可继续过滤查找其它类
|
void |
reload()
重新加载脚本
|
void |
setAutoReload(boolean autoReload) |
protected boolean |
skipRegistScript(T script)
是否跳过此脚本类的注册
|
getStaticScriptClass, initStaticScriptRegist, newInstance, newInstance, registStaticScriptprotected final IClassProvider classProvider
protected volatile boolean autoReload
protected ScriptClassProvider(ClassSource classSource, boolean autoReload)
protected ScriptClassProvider(IClassProvider classProvider)
protected final boolean isAbstractOrInterface(Class<?> clazz)
protected final <C> C getInstacne(Class<C> clazz)
protected boolean skipRegistScript(T script)
script - protected void onScriptLoaded(Set<Class<?>> loadedClasses) throws Exception
classes - Exceptionpublic final IClassProvider.State getState()
public final T buildInstance(int code)
IScriptFactorybuildInstance 在接口中 IScriptFactory<T extends IScript>buildInstance 在类中 StaticScriptClassFactory<T extends IScript>public final T buildInstance(int code, Object... args)
IScriptFactorybuildInstance 在接口中 IScriptFactory<T extends IScript>buildInstance 在类中 StaticScriptClassFactory<T extends IScript>args - 脚本构造参数public final void reload()
IScriptFactoryreload 在接口中 IScriptFactory<T extends IScript>reload 在类中 StaticScriptClassFactory<T extends IScript>public final boolean hasCode(int code)
public boolean isAutoReload()
public void setAutoReload(boolean autoReload)
Copyright © 2020. All rights reserved.