Skip to content

Commit a7d419a

Browse files
wangwang
authored andcommitted
set the getter/setter method name as a constant
1 parent 61343ce commit a7d419a

File tree

4 files changed

+16
-6
lines changed

4 files changed

+16
-6
lines changed

apm-sniffer/apm-agent-core/src/main/java/org/apache/skywalking/apm/agent/core/plugin/AbstractClassEnhancePluginDefine.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,14 @@ public abstract class AbstractClassEnhancePluginDefine {
5151
* New field name.
5252
*/
5353
public static final String CONTEXT_ATTR_NAME = "_$EnhancedClassField_ws";
54+
/**
55+
* Getter method name.
56+
*/
57+
public static final String CONTEXT_GETTER_NAME = "getSkyWalkingDynamicField";
58+
/**
59+
* Setter method name.
60+
*/
61+
public static final String CONTEXT_SETTER_NAME = "setSkyWalkingDynamicField";
5462

5563
/**
5664
* Main entrance of enhancing the class.

apm-sniffer/apm-agent-core/src/main/java/org/apache/skywalking/apm/agent/core/plugin/interceptor/enhance/ClassEnhancePluginDefine.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,9 +103,9 @@ protected DynamicType.Builder<?> enhanceInstance(TypeDescription typeDescription
103103
newClassBuilder = newClassBuilder.defineField(
104104
CONTEXT_ATTR_NAME, Object.class, ACC_PRIVATE | ACC_VOLATILE)
105105
.implement(EnhancedInstance.class)
106-
.defineMethod("getSkyWalkingDynamicField", Object.class, Visibility.PUBLIC)
106+
.defineMethod(CONTEXT_GETTER_NAME, Object.class, Visibility.PUBLIC)
107107
.intercept(FieldAccessor.ofField(CONTEXT_ATTR_NAME))
108-
.defineMethod("setSkyWalkingDynamicField", void.class, Visibility.PUBLIC).withParameters(Object.class)
108+
.defineMethod(CONTEXT_SETTER_NAME, void.class, Visibility.PUBLIC).withParameters(Object.class)
109109
.intercept(FieldAccessor.ofField(CONTEXT_ATTR_NAME));
110110
context.extendObjectCompleted();
111111
}

apm-sniffer/apm-agent-core/src/main/java/org/apache/skywalking/apm/agent/core/plugin/interceptor/enhance/v2/ClassEnhancePluginDefineV2.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -136,9 +136,9 @@ protected DynamicType.Builder<?> enhanceInstance(TypeDescription typeDescription
136136
newClassBuilder = newClassBuilder.defineField(
137137
CONTEXT_ATTR_NAME, Object.class, ACC_PRIVATE | ACC_VOLATILE)
138138
.implement(EnhancedInstance.class)
139-
.defineMethod("getSkyWalkingDynamicField", Object.class, Visibility.PUBLIC)
139+
.defineMethod(CONTEXT_GETTER_NAME, Object.class, Visibility.PUBLIC)
140140
.intercept(FieldAccessor.ofField(CONTEXT_ATTR_NAME))
141-
.defineMethod("setSkyWalkingDynamicField", void.class, Visibility.PUBLIC).withParameters(Object.class)
141+
.defineMethod(CONTEXT_SETTER_NAME, void.class, Visibility.PUBLIC).withParameters(Object.class)
142142
.intercept(FieldAccessor.ofField(CONTEXT_ATTR_NAME));
143143
context.extendObjectCompleted();
144144
}

apm-sniffer/bytebuddy-patch/src/test/java/org/apache/skywalking/apm/agent/bytebuddy/cases/AbstractInterceptTest.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,8 @@
6060
import static net.bytebuddy.jar.asm.Opcodes.ACC_PRIVATE;
6161
import static net.bytebuddy.jar.asm.Opcodes.ACC_VOLATILE;
6262
import static org.apache.skywalking.apm.agent.core.plugin.AbstractClassEnhancePluginDefine.CONTEXT_ATTR_NAME;
63+
import static org.apache.skywalking.apm.agent.core.plugin.AbstractClassEnhancePluginDefine.CONTEXT_GETTER_NAME;
64+
import static org.apache.skywalking.apm.agent.core.plugin.AbstractClassEnhancePluginDefine.CONTEXT_SETTER_NAME;
6365

6466
public class AbstractInterceptTest {
6567
public static final String BIZ_FOO_CLASS_NAME = "org.apache.skywalking.apm.agent.bytebuddy.biz.BizFoo";
@@ -213,9 +215,9 @@ protected void installInterface(String className) {
213215
builder = builder.defineField(
214216
CONTEXT_ATTR_NAME, Object.class, ACC_PRIVATE | ACC_VOLATILE)
215217
.implement(EnhancedInstance.class)
216-
.defineMethod("getSkyWalkingDynamicField", Object.class, Visibility.PUBLIC)
218+
.defineMethod(CONTEXT_GETTER_NAME, Object.class, Visibility.PUBLIC)
217219
.intercept(FieldAccessor.ofField(CONTEXT_ATTR_NAME))
218-
.defineMethod("setSkyWalkingDynamicField", void.class, Visibility.PUBLIC).withParameters(Object.class)
220+
.defineMethod(CONTEXT_SETTER_NAME, void.class, Visibility.PUBLIC).withParameters(Object.class)
219221
.intercept(FieldAccessor.ofField(CONTEXT_ATTR_NAME));
220222
}
221223
return builder;

0 commit comments

Comments
 (0)