org_apache_struts2_StrutsSpringJUnit4TestCaseTest_java
org.springframework.util.ReflectionUtils
public static void doWithMethods(Class<?> clazz, MethodCallback mc, MethodFilter mf) {
        Method[] methods = ReflectionUtils.getDeclaredMethods(clazz);
        for (Method method : methods) {
            if (mf != null && !mf.matches(method)) continue;
            try {
                mc.doWith(method);
            }
            catch (IllegalAccessException ex) {
                throw new IllegalStateException("Not allowed to access method '" + method.getName() + "': " + ex);
            }
        }
        if (clazz.getSuperclass() != null) {
            ReflectionUtils.doWithMethods(clazz.getSuperclass(), mc, mf);
        } else if (clazz.isInterface()) {
            for (GenericDeclaration genericDeclaration : clazz.getInterfaces()) {
                ReflectionUtils.doWithMethods(genericDeclaration, mc, mf);
            }
        }
    }
 -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.Object.hashCode(): int -> java.lang.ref.ReferenceQueue.poll(): java.lang.ref.Reference -> java.lang.Class.getDeclaredMethods(): java.lang.reflect.Method[] -> java.lang.Class.getInterfaces(): java.lang.Class[] -> java.lang.Class.getMethods(): java.lang.reflect.Method[] -> java.util.Map.put(java.lang.Object,java.lang.Object): java.lang.Object -> java.util.EnumSet.of(java.lang.Enum,java.lang.Enum[]): java.util.EnumSet -> java.lang.Object.hashCode(): int -> java.util.EnumSet.contains(java.lang.Object): boolean -> java.util.EnumSet.contains(java.lang.Object): boolean -> java.lang.ref.ReferenceQueue.poll(): java.lang.ref.Reference -> java.util.EnumSet.contains(java.lang.Object): boolean -> java.util.EnumSet.contains(java.lang.Object): boolean -> java.lang.reflect.Method.isBridge(): boolean -> java.lang.reflect.Method.getDeclaringClass(): java.lang.Class -> java.lang.reflect.Method.getModifiers(): int -> java.lang.reflect.Modifier.isPrivate(int): boolean -> java.lang.reflect.Method.getModifiers(): int -> java.lang.reflect.Modifier.isPublic(int): boolean -> java.lang.reflect.Method.getDeclaringClass(): java.lang.Class -> java.lang.reflect.Method.getModifiers(): int -> java.lang.reflect.Modifier.isPublic(int): boolean -> java.lang.reflect.Method.getName(): java.lang.String -> java.lang.reflect.Method.getParameterTypes(): java.lang.Class[] -> java.lang.Class.getMethod(java.lang.String,java.lang.Class[]): java.lang.reflect.Method -> java.lang.reflect.AnnotatedElement.getAnnotation(java.lang.Class): java.lang.annotation.Annotation -> java.util.Set.add(java.lang.Object): boolean -> java.lang.reflect.AnnotatedElement.getDeclaredAnnotations(): java.lang.annotation.Annotation[] -> java.lang.reflect.Method.isBridge(): boolean -> java.lang.reflect.Method.getDeclaringClass(): java.lang.Class -> java.lang.Class.getInterfaces(): java.lang.Class[] -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.Object.hashCode(): int -> java.lang.ref.ReferenceQueue.poll(): java.lang.ref.Reference -> java.lang.ref.SoftReference.get(): java.lang.Object -> java.lang.ref.SoftReference.get(): java.lang.Object -> java.lang.Boolean.booleanValue(): boolean -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.Object.hashCode(): int -> java.lang.ref.ReferenceQueue.poll(): java.lang.ref.Reference -> java.lang.ref.SoftReference.get(): java.lang.Object -> java.lang.ref.SoftReference.get(): java.lang.Object -> java.lang.Boolean.booleanValue(): boolean -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.Object.hashCode(): int -> java.lang.ref.ReferenceQueue.poll(): java.lang.ref.Reference -> java.lang.ref.SoftReference.get(): java.lang.Object -> java.lang.ref.SoftReference.get(): java.lang.Object -> java.lang.Boolean.booleanValue(): boolean -> java.lang.reflect.Method.getDeclaringClass(): java.lang.Class -> java.lang.Class.getSuperclass(): java.lang.Class -> java.lang.Class.getSuperclass(): java.lang.Class -> java.lang.Class.isInterface(): boolean -> java.lang.Class.getInterfaces(): java.lang.Class[] -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.Object.hashCode(): int -> java.lang.ref.ReferenceQueue.poll(): java.lang.ref.Reference -> java.lang.Class.getDeclaredMethods(): java.lang.reflect.Method[] -> java.lang.Class.getInterfaces(): java.lang.Class[] -> java.util.Map.put(java.lang.Object,java.lang.Object): java.lang.Object -> java.util.EnumSet.of(java.lang.Enum,java.lang.Enum[]): java.util.EnumSet -> java.lang.Object.hashCode(): int -> java.util.EnumSet.contains(java.lang.Object): boolean -> java.util.EnumSet.contains(java.lang.Object): boolean -> java.lang.ref.ReferenceQueue.poll(): java.lang.ref.Reference -> java.util.EnumSet.contains(java.lang.Object): boolean -> java.util.EnumSet.contains(java.lang.Object): boolean -> java.lang.Class.getSuperclass(): java.lang.Class -> java.lang.Class.isInterface(): boolean -> java.lang.Class.getInterfaces(): java.lang.Class[]
 [CALL] [CALL] [CALL] [EXIT] -> java.util.Map.get(java.lang.Object): java.lang.Object [CALL] [CALL] [CALL] [CALL] -> java.lang.Object.hashCode(): int [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] -> java.lang.ref.ReferenceQueue.poll(): java.lang.ref.Reference [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] -> java.lang.Class.getDeclaredMethods(): java.lang.reflect.Method[] [CALL] -> java.lang.Class.getInterfaces(): java.lang.Class[] -> java.lang.Class.getMethods(): java.lang.reflect.Method[] [EXIT] -> java.util.Map.put(java.lang.Object,java.lang.Object): java.lang.Object [CALL] [CALL] [CALL] [CALL] -> java.util.EnumSet.of(java.lang.Enum,java.lang.Enum[]): java.util.EnumSet [EXIT] [EXIT] [CALL] [CALL] -> java.lang.Object.hashCode(): int [EXIT] [CALL] [EXIT] [CALL] [CALL] -> java.util.EnumSet.contains(java.lang.Object): boolean [EXIT] [CALL] -> java.util.EnumSet.contains(java.lang.Object): boolean [EXIT] [CALL] [CALL] -> java.lang.ref.ReferenceQueue.poll(): java.lang.ref.Reference [EXIT] [EXIT] [CALL] -> java.util.EnumSet.contains(java.lang.Object): boolean [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [EXIT] [CALL] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [CALL] -> java.util.EnumSet.contains(java.lang.Object): boolean [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] -> java.lang.reflect.Method.isBridge(): boolean -> java.lang.reflect.Method.getDeclaringClass(): java.lang.Class [EXIT] [CALL] [CALL] [CALL] -> java.lang.reflect.Method.getModifiers(): int -> java.lang.reflect.Modifier.isPrivate(int): boolean -> java.lang.reflect.Method.getModifiers(): int -> java.lang.reflect.Modifier.isPublic(int): boolean [EXIT] -> java.lang.reflect.Method.getDeclaringClass(): java.lang.Class -> java.lang.reflect.Method.getModifiers(): int -> java.lang.reflect.Modifier.isPublic(int): boolean -> java.lang.reflect.Method.getName(): java.lang.String -> java.lang.reflect.Method.getParameterTypes(): java.lang.Class[] -> java.lang.Class.getMethod(java.lang.String,java.lang.Class[]): java.lang.reflect.Method [EXIT] [CALL] [CALL] [CALL] [CALL] [EXIT] -> java.lang.reflect.AnnotatedElement.getAnnotation(java.lang.Class): java.lang.annotation.Annotation [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [CALL] [CALL] [EXIT] -> java.util.Set.add(java.lang.Object): boolean -> java.lang.reflect.AnnotatedElement.getDeclaredAnnotations(): java.lang.annotation.Annotation[] [CALL] -> java.lang.reflect.Method.isBridge(): boolean [EXIT] -> java.lang.reflect.Method.getDeclaringClass(): java.lang.Class -> java.lang.Class.getInterfaces(): java.lang.Class[] [CALL] [CALL] -> java.util.Map.get(java.lang.Object): java.lang.Object [CALL] [CALL] [CALL] [CALL] -> java.lang.Object.hashCode(): int [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] -> java.lang.ref.ReferenceQueue.poll(): java.lang.ref.Reference [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] -> java.lang.ref.SoftReference.get(): java.lang.Object [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] -> java.lang.ref.SoftReference.get(): java.lang.Object [EXIT] [EXIT] [CALL] [EXIT] [EXIT] -> java.lang.Boolean.booleanValue(): boolean [EXIT] [CALL] -> java.util.Map.get(java.lang.Object): java.lang.Object [CALL] [CALL] [CALL] [CALL] -> java.lang.Object.hashCode(): int [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] -> java.lang.ref.ReferenceQueue.poll(): java.lang.ref.Reference [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] -> java.lang.ref.SoftReference.get(): java.lang.Object [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] -> java.lang.ref.SoftReference.get(): java.lang.Object [EXIT] [EXIT] [CALL] [EXIT] [EXIT] -> java.lang.Boolean.booleanValue(): boolean [EXIT] [CALL] -> java.util.Map.get(java.lang.Object): java.lang.Object [CALL] [CALL] [CALL] [CALL] -> java.lang.Object.hashCode(): int [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] -> java.lang.ref.ReferenceQueue.poll(): java.lang.ref.Reference [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] -> java.lang.ref.SoftReference.get(): java.lang.Object [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] -> java.lang.ref.SoftReference.get(): java.lang.Object [EXIT] [EXIT] [CALL] [EXIT] [EXIT] -> java.lang.Boolean.booleanValue(): boolean [EXIT] [EXIT] -> java.lang.reflect.Method.getDeclaringClass(): java.lang.Class -> java.lang.Class.getSuperclass(): java.lang.Class [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] -> java.lang.Class.getSuperclass(): java.lang.Class -> java.lang.Class.isInterface(): boolean -> java.lang.Class.getInterfaces(): java.lang.Class[] [CALL] [CALL] [CALL] [EXIT] -> java.util.Map.get(java.lang.Object): java.lang.Object [CALL] [CALL] [CALL] [CALL] -> java.lang.Object.hashCode(): int [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] -> java.lang.ref.ReferenceQueue.poll(): java.lang.ref.Reference [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] -> java.lang.Class.getDeclaredMethods(): java.lang.reflect.Method[] [CALL] -> java.lang.Class.getInterfaces(): java.lang.Class[] [EXIT] -> java.util.Map.put(java.lang.Object,java.lang.Object): java.lang.Object [CALL] [CALL] [CALL] [CALL] -> java.util.EnumSet.of(java.lang.Enum,java.lang.Enum[]): java.util.EnumSet [EXIT] [EXIT] [CALL] [CALL] -> java.lang.Object.hashCode(): int [EXIT] [CALL] [EXIT] [CALL] [CALL] -> java.util.EnumSet.contains(java.lang.Object): boolean [EXIT] [CALL] -> java.util.EnumSet.contains(java.lang.Object): boolean [EXIT] [CALL] [CALL] -> java.lang.ref.ReferenceQueue.poll(): java.lang.ref.Reference [EXIT] [EXIT] [CALL] -> java.util.EnumSet.contains(java.lang.Object): boolean [EXIT] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [EXIT] [CALL] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [EXIT] [EXIT] [EXIT] [CALL] -> java.util.EnumSet.contains(java.lang.Object): boolean [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] -> java.lang.Class.getSuperclass(): java.lang.Class -> java.lang.Class.isInterface(): boolean -> java.lang.Class.getInterfaces(): java.lang.Class[] [EXIT] [EXIT]