|
|
@ -50,23 +50,22 @@ public class PathAndKeywordCheck extends IssuableSubscriptionVisitor { |
|
|
|
MethodTree methodTree = (MethodTree) parent; |
|
|
|
MethodTree methodTree = (MethodTree) parent; |
|
|
|
methodTree.parameters().forEach(parameter -> { |
|
|
|
methodTree.parameters().forEach(parameter -> { |
|
|
|
if (parameter.type() != null) { |
|
|
|
if (parameter.type() != null) { |
|
|
|
String parameterType = parameter.type().symbolType().name(); |
|
|
|
String parameterType = parameter.type().symbolType().fullyQualifiedName(); |
|
|
|
if (parameterType.equals("String")) { // 这里假设你关心的参数类型是 String
|
|
|
|
System.out.println(parameterType); |
|
|
|
String className = newClassTree.symbolType().name(); |
|
|
|
String className = newClassTree.symbolType().name(); |
|
|
|
if (TARGET_CLASS_NAMES.contains(className)) { |
|
|
|
if (TARGET_CLASS_NAMES.contains(className)) { |
|
|
|
// 获取构造方法的参数
|
|
|
|
// 获取构造方法的参数
|
|
|
|
List<ExpressionTree> arguments = newClassTree.arguments(); |
|
|
|
List<ExpressionTree> arguments = newClassTree.arguments(); |
|
|
|
if (!arguments.isEmpty()) { |
|
|
|
if (!arguments.isEmpty()) { |
|
|
|
ExpressionTree firstArgument = arguments.get(0); |
|
|
|
ExpressionTree firstArgument = arguments.get(0); |
|
|
|
String constructorArgument = getArgumentValue(firstArgument); |
|
|
|
String constructorArgument = getArgumentValue(firstArgument); |
|
|
|
|
|
|
|
|
|
|
|
// 获取方法的入参名称
|
|
|
|
// 获取方法的入参名称
|
|
|
|
String parameterName = parameter.simpleName().name(); |
|
|
|
String parameterName = parameter.simpleName().name(); |
|
|
|
|
|
|
|
|
|
|
|
if (constructorArgument != null && constructorArgument.equals(parameterName)) { |
|
|
|
if (constructorArgument != null && constructorArgument.equals(parameterName)) { |
|
|
|
System.out.println("避免在参数中使用 " + className + " 对象的构造方法的参数:" + parameterName); |
|
|
|
System.out.println("避免在参数中使用 " + className + " 对象的构造方法的参数:" + parameterName); |
|
|
|
reportIssue(newClassTree, "避免在参数中使用禁止的关键字"); |
|
|
|
reportIssue(newClassTree, "避免在参数中使用禁止的关键字"); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|