org_apache_struts_beanvalidation_BeanValidationInterceptorTest_java
org.hibernate.validator.internal.engine.valueextraction.ValueExtractorDescriptor
private static void determineValueExtractorDefinitions(List<AnnotatedType> valueExtractorDefinitions, Class<?> extractorImplementationType) {
        if (!ValueExtractor.class.isAssignableFrom(extractorImplementationType)) {
            return;
        }
        Class<?> superClass = extractorImplementationType.getSuperclass();
        if (superClass != null && !Object.class.equals(superClass)) {
            ValueExtractorDescriptor.determineValueExtractorDefinitions(valueExtractorDefinitions, superClass);
        }
        for (Class<?> clazz : extractorImplementationType.getInterfaces()) {
            if (ValueExtractor.class.equals(clazz)) continue;
            ValueExtractorDescriptor.determineValueExtractorDefinitions(valueExtractorDefinitions, clazz);
        }
        for (AnnotatedElement annotatedElement : extractorImplementationType.getAnnotatedInterfaces()) {
            if (!ValueExtractor.class.equals(ReflectionHelper.getClassFromType(annotatedElement.getType()))) continue;
            valueExtractorDefinitions.add((AnnotatedType)annotatedElement);
        }
    }
 -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.lang.Class.getSuperclass(): java.lang.Class -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Class.getInterfaces(): java.lang.Class[] -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Class.getAnnotatedInterfaces(): java.lang.reflect.AnnotatedType[] -> java.lang.reflect.AnnotatedType.getType(): java.lang.reflect.Type -> java.lang.invoke.MethodHandles$Lookup.lookupClass(): java.lang.Class -> java.lang.Class.getName(): java.lang.String -> java.security.AccessController.doPrivileged(java.security.PrivilegedAction): java.lang.Object -> java.util.Locale.getLanguage(): java.lang.String -> java.util.Locale.getCountry(): java.lang.String -> java.util.Locale.getVariant(): java.lang.String -> java.lang.Class.getClassLoader(): java.lang.ClassLoader -> java.lang.Class.getName(): java.lang.String -> java.lang.String.length(): int -> java.lang.String.length(): int -> java.lang.String.length(): int -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(char): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.String.length(): int -> java.lang.StringBuilder.append(char): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.toString(): java.lang.String -> java.lang.Class.forName(java.lang.String,boolean,java.lang.ClassLoader): java.lang.Class -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(char): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.toString(): java.lang.String -> java.lang.Class.forName(java.lang.String,boolean,java.lang.ClassLoader): java.lang.Class -> java.lang.Class.asSubclass(java.lang.Class): java.lang.Class -> java.lang.Class.getConstructor(java.lang.Class[]): java.lang.reflect.Constructor -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.Class.newInstance(): java.lang.Object -> java.lang.Class.newInstance(): java.lang.Object -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.toString(): java.lang.String -> java.util.Map.containsKey(java.lang.Object): boolean -> java.util.Map.containsKey(java.lang.Object): boolean -> java.lang.System.getProperties(): java.util.Properties -> java.util.Properties.containsKey(java.lang.Object): boolean -> java.util.Set.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.Iterator.hasNext(): boolean -> java.util.Map.containsKey(java.lang.Object): boolean -> java.util.regex.Pattern.matcher(java.lang.CharSequence): java.util.regex.Matcher -> java.util.regex.Matcher.find(): boolean -> java.util.regex.Matcher.group(int): java.lang.String -> java.lang.String.toLowerCase(): java.lang.String -> java.util.List.add(java.lang.Object): boolean -> java.util.regex.Matcher.find(): boolean -> java.util.regex.Matcher.group(int): java.lang.String -> java.lang.String.toLowerCase(): java.lang.String -> java.util.List.add(java.lang.Object): boolean -> java.util.regex.Matcher.find(): boolean -> java.util.regex.Matcher.group(int): java.lang.String -> java.lang.String.toLowerCase(): java.lang.String -> java.util.List.add(java.lang.Object): boolean -> java.util.regex.Matcher.find(): boolean -> java.util.regex.Matcher.group(int): java.lang.String -> java.lang.String.toLowerCase(): java.lang.String -> java.util.List.add(java.lang.Object): boolean -> java.util.regex.Matcher.find(): boolean -> java.util.regex.Matcher.group(int): java.lang.String -> java.lang.String.toLowerCase(): java.lang.String -> java.util.List.add(java.lang.Object): boolean -> java.util.regex.Matcher.find(): boolean -> java.util.regex.Matcher.group(int): java.lang.String -> java.lang.String.toLowerCase(): java.lang.String -> java.util.List.add(java.lang.Object): boolean -> java.util.regex.Matcher.find(): boolean -> java.util.regex.Matcher.group(int): java.lang.String -> java.lang.String.toLowerCase(): java.lang.String -> java.util.List.add(java.lang.Object): boolean -> java.util.regex.Matcher.find(): boolean -> java.util.regex.Matcher.group(int): java.lang.String -> java.lang.String.toLowerCase(): java.lang.String -> java.util.List.add(java.lang.Object): boolean -> java.util.regex.Matcher.find(): boolean -> java.util.regex.Matcher.group(int): java.lang.String -> java.lang.String.toLowerCase(): java.lang.String -> java.util.List.add(java.lang.Object): boolean -> java.util.regex.Matcher.find(): boolean -> java.util.Map.put(java.lang.Object,java.lang.Object): java.lang.Object -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.String.lastIndexOf(java.lang.String): int -> java.lang.String.length(): int -> java.lang.String.substring(int): java.lang.String -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.util.concurrent.ConcurrentMap.putIfAbsent(java.lang.Object,java.lang.Object): java.lang.Object -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.util.Map.get(java.lang.Object): java.lang.Object -> java.lang.reflect.Constructor.newInstance(java.lang.Object[]): java.lang.Object -> java.lang.reflect.ParameterizedType.getRawType(): java.lang.reflect.Type -> java.lang.Object.equals(java.lang.Object): boolean -> java.util.List.add(java.lang.Object): boolean
 [CALL] -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.lang.Class.getSuperclass(): java.lang.Class -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Class.getInterfaces(): java.lang.Class[] -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Class.getAnnotatedInterfaces(): java.lang.reflect.AnnotatedType[] -> java.lang.reflect.AnnotatedType.getType(): java.lang.reflect.Type [CALL] -> java.lang.invoke.MethodHandles$Lookup.lookupClass(): java.lang.Class -> java.lang.Class.getName(): java.lang.String [CALL] [CALL] [EXIT] [CALL] [CALL] [EXIT] -> java.security.AccessController.doPrivileged(java.security.PrivilegedAction): java.lang.Object [CALL] -> java.util.Locale.getLanguage(): java.lang.String -> java.util.Locale.getCountry(): java.lang.String -> java.util.Locale.getVariant(): java.lang.String -> java.lang.Class.getClassLoader(): java.lang.ClassLoader -> java.lang.Class.getName(): java.lang.String -> java.lang.String.length(): int -> java.lang.String.length(): int -> java.lang.String.length(): int [CALL] [CALL] -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(char): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.String.length(): int -> java.lang.StringBuilder.append(char): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.toString(): java.lang.String [EXIT] [EXIT] -> java.lang.Class.forName(java.lang.String,boolean,java.lang.ClassLoader): java.lang.Class [CALL] [CALL] -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(char): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.toString(): java.lang.String [EXIT] [EXIT] -> java.lang.Class.forName(java.lang.String,boolean,java.lang.ClassLoader): java.lang.Class -> java.lang.Class.asSubclass(java.lang.Class): java.lang.Class -> java.lang.Class.getConstructor(java.lang.Class[]): java.lang.reflect.Constructor [CALL] [CALL] [CALL] [CALL] [CALL] [EXIT] [CALL] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [CALL] [CALL] [EXIT] [CALL] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] [CALL] [CALL] [CALL] -> java.lang.Class.newInstance(): java.lang.Object [CALL] [EXIT] [EXIT] [CALL] -> java.lang.Class.newInstance(): java.lang.Object [CALL] [CALL] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [EXIT] -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.append(java.lang.String): java.lang.StringBuilder -> java.lang.StringBuilder.toString(): java.lang.String [CALL] [CALL] [CALL] -> java.util.Map.containsKey(java.lang.Object): boolean -> java.util.Map.containsKey(java.lang.Object): boolean [CALL] -> java.lang.System.getProperties(): java.util.Properties -> java.util.Properties.containsKey(java.lang.Object): boolean [EXIT] -> java.util.Set.iterator(): java.util.Iterator -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.Iterator.hasNext(): boolean -> java.util.Iterator.next(): java.lang.Object -> java.util.Iterator.hasNext(): boolean [CALL] -> java.util.Map.containsKey(java.lang.Object): boolean -> java.util.regex.Pattern.matcher(java.lang.CharSequence): java.util.regex.Matcher -> java.util.regex.Matcher.find(): boolean -> java.util.regex.Matcher.group(int): java.lang.String -> java.lang.String.toLowerCase(): java.lang.String -> java.util.List.add(java.lang.Object): boolean -> java.util.regex.Matcher.find(): boolean -> java.util.regex.Matcher.group(int): java.lang.String -> java.lang.String.toLowerCase(): java.lang.String -> java.util.List.add(java.lang.Object): boolean -> java.util.regex.Matcher.find(): boolean -> java.util.regex.Matcher.group(int): java.lang.String -> java.lang.String.toLowerCase(): java.lang.String -> java.util.List.add(java.lang.Object): boolean -> java.util.regex.Matcher.find(): boolean -> java.util.regex.Matcher.group(int): java.lang.String -> java.lang.String.toLowerCase(): java.lang.String -> java.util.List.add(java.lang.Object): boolean -> java.util.regex.Matcher.find(): boolean -> java.util.regex.Matcher.group(int): java.lang.String -> java.lang.String.toLowerCase(): java.lang.String -> java.util.List.add(java.lang.Object): boolean -> java.util.regex.Matcher.find(): boolean -> java.util.regex.Matcher.group(int): java.lang.String -> java.lang.String.toLowerCase(): java.lang.String -> java.util.List.add(java.lang.Object): boolean -> java.util.regex.Matcher.find(): boolean -> java.util.regex.Matcher.group(int): java.lang.String -> java.lang.String.toLowerCase(): java.lang.String -> java.util.List.add(java.lang.Object): boolean -> java.util.regex.Matcher.find(): boolean -> java.util.regex.Matcher.group(int): java.lang.String -> java.lang.String.toLowerCase(): java.lang.String -> java.util.List.add(java.lang.Object): boolean -> java.util.regex.Matcher.find(): boolean -> java.util.regex.Matcher.group(int): java.lang.String -> java.lang.String.toLowerCase(): java.lang.String -> java.util.List.add(java.lang.Object): boolean -> java.util.regex.Matcher.find(): boolean -> java.util.Map.put(java.lang.Object,java.lang.Object): java.lang.Object [EXIT] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] [EXIT] [EXIT] [CALL] [EXIT] -> java.lang.String.lastIndexOf(java.lang.String): int -> java.lang.String.length(): int -> java.lang.String.substring(int): java.lang.String [EXIT] [CALL] [CALL] [EXIT] [CALL] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] [CALL] -> java.util.concurrent.ConcurrentMap.putIfAbsent(java.lang.Object,java.lang.Object): java.lang.Object [EXIT] [EXIT] [CALL] [CALL] [EXIT] [CALL] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] -> java.util.Map.get(java.lang.Object): java.lang.Object [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] -> java.lang.reflect.Constructor.newInstance(java.lang.Object[]): java.lang.Object [CALL] [CALL] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [EXIT] [CALL] [CALL] [EXIT] [EXIT] [CALL] -> java.lang.reflect.ParameterizedType.getRawType(): java.lang.reflect.Type [CALL] [EXIT] [EXIT] -> java.lang.Object.equals(java.lang.Object): boolean -> java.util.List.add(java.lang.Object): boolean [EXIT]