Add “ClassLoader” paramter for enhance method. Prepare for improving interceptor initialization performance.
This commit is contained in:
parent
6b2849dbb6
commit
13816c8cd0
|
|
@ -52,7 +52,7 @@ public abstract class AbstractClassEnhancePluginDefine {
|
|||
/**
|
||||
* find origin class source code for interceptor
|
||||
*/
|
||||
DynamicType.Builder<?> newClassBuilder = this.enhance(transformClassName, builder);
|
||||
DynamicType.Builder<?> newClassBuilder = this.enhance(transformClassName, builder, classLoader);
|
||||
|
||||
logger.debug("enhance class {} by {} completely.", transformClassName, interceptorDefineClassName);
|
||||
|
||||
|
|
@ -60,7 +60,7 @@ public abstract class AbstractClassEnhancePluginDefine {
|
|||
}
|
||||
|
||||
protected abstract DynamicType.Builder<?> enhance(String enhanceOriginClassName,
|
||||
DynamicType.Builder<?> newClassBuilder) throws PluginException;
|
||||
DynamicType.Builder<?> newClassBuilder, ClassLoader classLoader) throws PluginException;
|
||||
|
||||
/**
|
||||
* Define the classname of target class.
|
||||
|
|
|
|||
|
|
@ -49,10 +49,10 @@ public abstract class ClassEnhancePluginDefine extends AbstractClassEnhancePlugi
|
|||
*/
|
||||
@Override
|
||||
protected DynamicType.Builder<?> enhance(String enhanceOriginClassName,
|
||||
DynamicType.Builder<?> newClassBuilder) throws PluginException {
|
||||
newClassBuilder = this.enhanceClass(enhanceOriginClassName, newClassBuilder);
|
||||
DynamicType.Builder<?> newClassBuilder, ClassLoader classLoader) throws PluginException {
|
||||
newClassBuilder = this.enhanceClass(enhanceOriginClassName, newClassBuilder, classLoader);
|
||||
|
||||
newClassBuilder = this.enhanceInstance(enhanceOriginClassName, newClassBuilder);
|
||||
newClassBuilder = this.enhanceInstance(enhanceOriginClassName, newClassBuilder, classLoader);
|
||||
|
||||
return newClassBuilder;
|
||||
}
|
||||
|
|
@ -65,7 +65,7 @@ public abstract class ClassEnhancePluginDefine extends AbstractClassEnhancePlugi
|
|||
* @return new byte-buddy's builder for further manipulation.
|
||||
*/
|
||||
private DynamicType.Builder<?> enhanceInstance(String enhanceOriginClassName,
|
||||
DynamicType.Builder<?> newClassBuilder) throws PluginException {
|
||||
DynamicType.Builder<?> newClassBuilder, ClassLoader classLoader) throws PluginException {
|
||||
ConstructorInterceptPoint[] constructorInterceptPoints = getConstructorsInterceptPoints();
|
||||
InstanceMethodsInterceptPoint[] instanceMethodsInterceptPoints = getInstanceMethodsInterceptPoints();
|
||||
|
||||
|
|
@ -173,7 +173,7 @@ public abstract class ClassEnhancePluginDefine extends AbstractClassEnhancePlugi
|
|||
* @return new byte-buddy's builder for further manipulation.
|
||||
*/
|
||||
private DynamicType.Builder<?> enhanceClass(String enhanceOriginClassName,
|
||||
DynamicType.Builder<?> newClassBuilder) throws PluginException {
|
||||
DynamicType.Builder<?> newClassBuilder, ClassLoader classLoader) throws PluginException {
|
||||
StaticMethodsInterceptPoint[] staticMethodsInterceptPoints = getStaticMethodsInterceptPoints();
|
||||
|
||||
if (staticMethodsInterceptPoints == null || staticMethodsInterceptPoints.length == 0) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue