public class AppContext extends BeanContainer
beanBuilders, beanExtractors, beanInjectors, beanInterceptors, SYNC_LOCK| 构造器和说明 |
|---|
AppContext(ClassLoader classLoader,
Props props) |
| 限定符和类型 | 方法和说明 |
|---|---|
protected void |
beanComponentized(BeanWrap bw,
boolean registered)
组件化处理
|
void |
beanExtractOrProxy(BeanWrap bw)
为一个对象提取函数或自动代理
|
void |
beanImport(Import anno)
根据注解配置导入bean
|
void |
beanInject(Object obj)
为一个对象注入(可以重写)
|
protected void |
beanInject(VarHolder varH,
String name,
boolean required,
boolean autoRefreshed) |
void |
beanLoaded()
已过时。
2.2
|
BeanWrap |
beanMake(Class<?> clz)
::制造 bean 及对应处理
|
void |
beanOnloaded(Consumer<AppContext> fun)
已过时。
2.2
|
void |
beanOnloaded(int index,
Consumer<AppContext> fun)
已过时。
2.2
|
void |
beanScan(Class<?> source)
::扫描源下的所有 bean 及对应处理
|
void |
beanScan(ClassLoader classLoader,
String basePackage)
::扫描源下的所有 bean 及对应处理
|
void |
beanScan(String basePackage)
::扫描源下的所有 bean 及对应处理
|
void |
beanShapeRegister(Class<?> clz,
BeanWrap bw,
AnnotatedElement annoEl)
尝试 bean 形态注册
|
void |
clear() |
protected void |
initialize()
::初始化(独立出 initialize,方便重写)
|
boolean |
isStarted()
是否已启动
|
void |
lifecycle(int index,
LifecycleBean lifecycle)
添加生命周期 bean
|
void |
lifecycle(LifecycleBean lifecycle)
添加生命周期 bean
|
void |
methodForeach(Consumer<MethodWrap> action)
遍历method (拿到的是method包装)
|
MethodWrap |
methodGet(Class<?> clz,
Method method)
获取方法包装(方便 aot 收集)
|
MethodWrap |
methodGet(Method method)
获取方法包装(方便 aot 收集)
|
<T> AppContext |
onEvent(Class<T> type,
EventListener<T> handler)
订阅事件
|
<T> AppContext |
onEvent(Class<T> type,
int index,
EventListener<T> handler)
订阅事件
|
void |
prestop()
停止(一般在插件停止之后,再执行)
|
void |
start()
启动(一般在插件启动之后,应用完成扫描,再执行)
|
void |
stop()
停止(一般在插件停止之后,再执行)
|
protected int |
tryBuildBeanOfClass(Class<?> clz)
根据类尝试生成 bean(用 protected,方便扩展时复用)
|
protected void |
tryBuildBeanOfMethod(BeanWrap bw,
Method m,
Bean ma)
根据方法尝试生成 bean(用 protected,方便扩展时复用)
|
protected void |
tryBuildBeanOfMethod2(Bean anno,
MethodWrap mWrap,
BeanWrap bw,
Object[] args) |
protected void |
tryInject(VarHolder varH,
Annotation[] annS)
尝试为bean注入
|
protected void |
tryMethodParamsGather(AppContext context,
int label,
Class<?> outType,
Parameter[] paramAry,
ConsumerEx<Object[]> completionConsumer)
尝试方法参数收集
|
protected BeanWrap |
wrapCreate(Class<?> type,
Object bean,
String name)
生成 bean 包装
|
aot, attachmentGet, attachmentOf, attachmentSet, beanAroundAdd, beanAroundAdd, beanAroundGet, beanBuilderAdd, beanExtractorAdd, beanExtractorHas, beanFind, beanFind, beanForeach, beanForeach, beanInject, beanInjectorAdd, beanInjectProperties, beanInterceptorAdd, beanInterceptorAdd, beanInterceptorGet, beanNotice, beanRegister, beanRegisterSup0, beanStop0, beanSubscribe, cfg, copyTo, findConfigKey, getAttrs, getBean, getBean, getBeanAsync, getBeanAsync, getBeanOrNew, getBeansMapOfType, getBeansOfType, getClassLoader, getWrap, getWrapAsync, getWrapsOfType, hasWrap, putWrap, putWrap, removeWrap, removeWrap, subBeansOfType, subWrapsOfType, wrap, wrap, wrap, wrapAndPut, wrapAndPut, wrapExternalSubscribe, wrapPublishpublic AppContext(ClassLoader classLoader, Props props)
public <T> AppContext onEvent(Class<T> type, EventListener<T> handler)
public <T> AppContext onEvent(Class<T> type, int index, EventListener<T> handler)
public MethodWrap methodGet(Method method)
method - 方法public MethodWrap methodGet(Class<?> clz, Method method)
method - 方法public void methodForeach(Consumer<MethodWrap> action)
action - 遍历动作public void clear()
clear 在类中 BeanContainerprotected BeanWrap wrapCreate(Class<?> type, Object bean, String name)
wrapCreate 在类中 BeanContainerprotected void initialize()
protected void beanComponentized(BeanWrap bw, boolean registered)
protected void beanInject(VarHolder varH, String name, boolean required, boolean autoRefreshed)
beanInject 在类中 BeanContainerpublic void beanShapeRegister(Class<?> clz, BeanWrap bw, AnnotatedElement annoEl)
clz - 类bw - Bean 包装annoEl - 有注解元素(类 或 方法)public void beanExtractOrProxy(BeanWrap bw)
public void beanInject(Object obj)
public void beanImport(Import anno)
public void beanScan(Class<?> source)
public void beanScan(String basePackage)
public void beanScan(ClassLoader classLoader, String basePackage)
protected void tryInject(VarHolder varH, Annotation[] annS)
protected void tryBuildBeanOfMethod(BeanWrap bw, Method m, Bean ma) throws Throwable
Throwableprotected void tryMethodParamsGather(AppContext context, int label, Class<?> outType, Parameter[] paramAry, ConsumerEx<Object[]> completionConsumer)
protected void tryBuildBeanOfMethod2(Bean anno, MethodWrap mWrap, BeanWrap bw, Object[] args) throws Throwable
Throwableprotected int tryBuildBeanOfClass(Class<?> clz)
@Deprecated public void beanOnloaded(Consumer<AppContext> fun)
@Deprecated public void beanOnloaded(int index, Consumer<AppContext> fun)
@Deprecated public void beanLoaded()
public void lifecycle(LifecycleBean lifecycle)
lifecycle 在类中 BeanContainerpublic void lifecycle(int index,
LifecycleBean lifecycle)
lifecycle 在类中 BeanContainerpublic boolean isStarted()
public void start()
public void prestop()
public void stop()
Copyright © 2024. All rights reserved.