org_apache_servicecomb_pack_omega_format_KryoMessageFormatTest_java
com.esotericsoftware.kryo.Kryo
public Registration getRegistration(Class type) {
        if (type == null) {
            throw new IllegalArgumentException("type cannot be null.");
        }
        Registration registration = this.classResolver.getRegistration(type);
        if (registration == null) {
            if (Proxy.isProxyClass(type)) {
                registration = this.getRegistration(InvocationHandler.class);
            } else if (!type.isEnum() && Enum.class.isAssignableFrom(type)) {
                registration = this.getRegistration(type.getEnclosingClass());
            } else if (EnumSet.class.isAssignableFrom(type)) {
                registration = this.classResolver.getRegistration(EnumSet.class);
            } else if (this.isClosure(type)) {
                registration = this.classResolver.getRegistration(ClosureSerializer.Closure.class);
            }
            if (registration == null) {
                if (this.registrationRequired) {
                    throw new IllegalArgumentException(this.unregisteredClassMessage(type));
                }
                if (this.warnUnregisteredClasses) {
                    Log.warn(this.unregisteredClassMessage(type));
                }
                registration = this.classResolver.registerImplicit(type);
            }
        }
        return registration;
    }
 -> java.lang.Object.hashCode(): int -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.reflect.Proxy.isProxyClass(java.lang.Class): boolean -> java.lang.Class.isEnum(): boolean -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.lang.Class.getName(): java.lang.String -> java.lang.String.indexOf(int): int -> java.lang.Class.isAnnotationPresent(java.lang.Class): boolean -> java.util.ArrayList.size(): int -> java.util.ArrayList.get(int): java.lang.Object -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.util.ArrayList.get(int): java.lang.Object -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.util.ArrayList.get(int): java.lang.Object -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.util.ArrayList.get(int): java.lang.Object -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.util.ArrayList.get(int): java.lang.Object -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.util.ArrayList.get(int): java.lang.Object -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.util.ArrayList.get(int): java.lang.Object -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.util.ArrayList.get(int): java.lang.Object -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.util.ArrayList.get(int): java.lang.Object -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.util.ArrayList.get(int): java.lang.Object -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.lang.Class.getConstructor(java.lang.Class[]): java.lang.reflect.Constructor -> java.lang.reflect.Constructor.newInstance(java.lang.Object[]): java.lang.Object -> java.lang.Class.getComponentType(): java.lang.Class -> java.lang.Class.getModifiers(): int -> java.lang.Object.hashCode(): int -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Object.equals(java.lang.Object): boolean -> java.lang.Class.isPrimitive(): boolean
 [CALL] [CALL] [CALL] -> java.lang.Object.hashCode(): int -> java.lang.Object.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.Object.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.Object.equals(java.lang.Object): boolean [CALL] [EXIT] [EXIT] [EXIT] -> java.lang.reflect.Proxy.isProxyClass(java.lang.Class): boolean -> java.lang.Class.isEnum(): boolean -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean [CALL] -> java.lang.Class.getName(): java.lang.String -> java.lang.String.indexOf(int): int [EXIT] [CALL] [CALL] [CALL] -> java.lang.Class.isAnnotationPresent(java.lang.Class): boolean [EXIT] -> java.util.ArrayList.size(): int -> java.util.ArrayList.get(int): java.lang.Object -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.util.ArrayList.get(int): java.lang.Object -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.util.ArrayList.get(int): java.lang.Object -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.util.ArrayList.get(int): java.lang.Object -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.util.ArrayList.get(int): java.lang.Object -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.util.ArrayList.get(int): java.lang.Object -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.util.ArrayList.get(int): java.lang.Object -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.util.ArrayList.get(int): java.lang.Object -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.util.ArrayList.get(int): java.lang.Object -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean -> java.util.ArrayList.get(int): java.lang.Object -> java.lang.Class.isAssignableFrom(java.lang.Class): boolean [CALL] [CALL] -> java.lang.Class.getConstructor(java.lang.Class[]): java.lang.reflect.Constructor -> java.lang.reflect.Constructor.newInstance(java.lang.Object[]): java.lang.Object [CALL] [CALL] [EXIT] -> java.lang.Class.getComponentType(): java.lang.Class -> java.lang.Class.getModifiers(): int [EXIT] [EXIT] [EXIT] [EXIT] [CALL] [EXIT] [CALL] [CALL] [EXIT] [CALL] [EXIT] [CALL] [CALL] -> java.lang.Object.hashCode(): int -> java.lang.Object.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.Object.equals(java.lang.Object): boolean [CALL] [EXIT] -> java.lang.Object.equals(java.lang.Object): boolean [EXIT] [EXIT] [CALL] [EXIT] -> java.lang.Class.isPrimitive(): boolean [EXIT] [EXIT] [EXIT]