Skip to content

Commit

Permalink
Update ApolloAuditSpanAspect.java
Browse files Browse the repository at this point in the history
  • Loading branch information
BlackBear2003 committed Dec 3, 2023
1 parent 9b9cbcc commit 3dda0ef
Showing 1 changed file with 14 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,12 @@
import java.lang.reflect.Method;
import java.util.Collection;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.Signature;
import org.aspectj.lang.annotation.Around;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Pointcut;
import org.aspectj.lang.reflect.MethodSignature;
import org.springframework.cglib.core.ReflectUtils;

@Aspect
public class ApolloAuditSpanAspect {
Expand Down Expand Up @@ -61,6 +64,7 @@ void auditDataInfluenceArg(ProceedingJoinPoint pjp) {
Object arg = args[i];
Annotation[] annotations = method.getParameterAnnotations()[i];


boolean needAudit = false;
String entityName = null;
String fieldName = null;
Expand All @@ -85,13 +89,18 @@ void auditDataInfluenceArg(ProceedingJoinPoint pjp) {

Method findMethod(ProceedingJoinPoint pjp) {
Class<?> clazz = pjp.getTarget().getClass();
Signature pjpSignature = pjp.getSignature();
String methodName = pjp.getSignature().getName();
for (Method method : clazz.getDeclaredMethods()) {
if (method.getName().equals(methodName)) {
return method;
}
Class[] parameterTypes = null;
if (pjpSignature instanceof MethodSignature) {
parameterTypes = ((MethodSignature) pjpSignature).getParameterTypes();
}
try {
Method method = ReflectUtils.findDeclaredMethod(clazz, methodName, parameterTypes);
return method;
} catch (NoSuchMethodException e) {
return null;
}
return null;
}

void parseArgAndAppend(String entityName, String fieldName, Object arg) {
Expand Down

0 comments on commit 3dda0ef

Please sign in to comment.