refactory code

This commit is contained in:
ascrutae 2018-01-28 14:48:56 +08:00
parent c300e85d9c
commit a5e37108af
5 changed files with 16 additions and 5 deletions

View File

@ -31,6 +31,8 @@ import static net.bytebuddy.matcher.ElementMatchers.not;
public abstract class AbstractSpringBeanInstrumentation extends ClassInstanceMethodsEnhancePluginDefine {
private static final String INTERCEPTOR_CLASS = "org.apache.skywalking.apm.plugin.spring.annotations.SpringAnnotationInterceptor";
public static final String INTERCEPT_GET_SKYWALKING_DYNAMIC_FIELD_METHOD = "getSkyWalkingDynamicField";
public static final String INTERCEPT_SET_SKYWALKING_DYNAMIC_FEILD_METHOD = "setSkyWalkingDynamicField";
@Override protected final ConstructorInterceptPoint[] getConstructorsInterceptPoints() {
return new ConstructorInterceptPoint[0];
@ -40,7 +42,7 @@ public abstract class AbstractSpringBeanInstrumentation extends ClassInstanceMet
return new InstanceMethodsInterceptPoint[] {
new InstanceMethodsInterceptPoint() {
@Override public ElementMatcher<MethodDescription> getMethodsMatcher() {
return isPublic().and(not(isDeclaredBy(Object.class)).and(not(named("getSkyWalkingDynamicField"))).and(not(named("setSkyWalkingDynamicField"))));
return isPublic().and(not(isDeclaredBy(Object.class)).and(not(named(INTERCEPT_GET_SKYWALKING_DYNAMIC_FIELD_METHOD))).and(not(named(INTERCEPT_SET_SKYWALKING_DYNAMIC_FEILD_METHOD))));
}
@Override public String getMethodsInterceptor() {

View File

@ -28,7 +28,9 @@ import static org.apache.skywalking.apm.agent.core.plugin.match.ClassAnnotationM
*/
public class SpringBeanInstrumentation extends AbstractSpringBeanInstrumentation {
public static final String ENHANCE_ANNOTATION = "org.springframework.context.annotation.Bean";
@Override protected ClassMatch enhanceClass() {
return byClassAnnotationMatch(new String[] {"org.springframework.context.annotation.Bean"});
return byClassAnnotationMatch(new String[] {ENHANCE_ANNOTATION});
}
}

View File

@ -25,7 +25,9 @@ import static org.apache.skywalking.apm.agent.core.plugin.match.ClassAnnotationM
public class SpringComponentInstrumentation extends AbstractSpringBeanInstrumentation {
public static final String ENHANCE_ANNOTATION = "org.springframework.stereotype.Component";
@Override protected ClassMatch enhanceClass() {
return byClassAnnotationMatch(new String[] {"org.springframework.stereotype.Component"});
return byClassAnnotationMatch(new String[] {ENHANCE_ANNOTATION});
}
}

View File

@ -24,7 +24,10 @@ import org.apache.skywalking.apm.plugin.spring.annotations.AbstractSpringBeanIns
import static org.apache.skywalking.apm.agent.core.plugin.match.ClassAnnotationMatch.byClassAnnotationMatch;
public class SpringRepositoryInstrumentation extends AbstractSpringBeanInstrumentation {
public static final String ENHANCE_ANNOTATION = "org.springframework.stereotype.Repository";
@Override protected ClassMatch enhanceClass() {
return byClassAnnotationMatch(new String[] {"org.springframework.stereotype.Repository"});
return byClassAnnotationMatch(new String[] {ENHANCE_ANNOTATION});
}
}

View File

@ -25,7 +25,9 @@ import static org.apache.skywalking.apm.agent.core.plugin.match.ClassAnnotationM
public class SpringServicesInstrumentation extends AbstractSpringBeanInstrumentation {
public static final String ENHANCE_ANNOTATION = "org.springframework.stereotype.Service";
@Override protected ClassMatch enhanceClass() {
return byClassAnnotationMatch(new String[] {"org.springframework.stereotype.Service"});
return byClassAnnotationMatch(new String[] {ENHANCE_ANNOTATION});
}
}