in bytekit-core/src/main/java/com/alibaba/bytekit/asm/location/InvokeLocationMatcher.java [175:202]
private boolean matchCall(MethodInsnNode methodInsnNode) {
if (methodName != null && !methodName.isEmpty()) {
if (!this.methodName.equals(methodInsnNode.name)) {
return false;
}
}
if (!excludes.isEmpty()) {
String ownerClassName = Type.getObjectType(methodInsnNode.owner).getClassName();
for (String exclude : excludes) {
if (MatchUtils.wildcardMatch(ownerClassName, exclude)) {
return false;
}
}
}
if (this.owner != null && !this.owner.equals(methodInsnNode.owner)) {
return false;
}
if (this.desc != null && !desc.equals(methodInsnNode.desc)) {
return false;
}
return true;
}