public class org.jvnet.hk.internal.Utilities extends java.lang.Object
{
private static final java.lang.String USE_SOFT_REFERENCE_PROPERTY;
static final boolean USE_SOFT_REFERENCE;
private static final org.jvnet.hk.internal.Utilities$AnnotationInformation DEFAULT_ANNOTATION_INFORMATION;
private static final java.lang.String PROVIDE_METHOD;
private static final java.util.HashSet NOT_INTERCEPTED;
private static final org.jvnet.hk.internal.Utilities$Interceptors EMTPY_INTERCEPTORS;
private static java.lang.Boolean proxiesAvailable;
public void <init>()
{
org.jvnet.hk.internal.Utilities v;
v := @this: org.jvnet.hk.internal.Utilities;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public static org.glassfish.hk.api.ClassAnalyzer getClassAnalyzer(org.jvnet.hk.internal.ServiceLocatorImpl, java.lang.String, org.jvnet.hk.internal.Collector)
{
org.jvnet.hk.internal.ServiceLocatorImpl v;
org.glassfish.hk.api.ClassAnalyzer v;
java.lang.String v;
org.jvnet.hk.internal.Collector v;
v := @parameter: org.jvnet.hk.internal.ServiceLocatorImpl;
v := @parameter: java.lang.String;
v := @parameter: org.jvnet.hk.internal.Collector;
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: org.glassfish.hk.api.ClassAnalyzer getAnalyzer(java.lang.String,org.jvnet.hk.internal.Collector)>(v, v);
return v;
}
public static java.lang.reflect.Constructor getConstructor(java.lang.Class, org.glassfish.hk.api.ClassAnalyzer, org.jvnet.hk.internal.Collector)
{
java.lang.Throwable v;
org.glassfish.hk.api.ClassAnalyzer v;
java.lang.AssertionError v;
java.lang.reflect.Constructor v;
org.jvnet.hk.internal.Utilities$2 v;
org.glassfish.hk.api.MultiException v;
java.lang.Class v;
java.lang.String v, v;
org.jvnet.hk.internal.Collector v;
v := @parameter: java.lang.Class;
v := @parameter: org.glassfish.hk.api.ClassAnalyzer;
v := @parameter: org.jvnet.hk.internal.Collector;
label:
v = interfaceinvoke v.<org.glassfish.hk.api.ClassAnalyzer: java.lang.reflect.Constructor getConstructor(java.lang.Class)>(v);
label:
goto label;
label:
v := @caughtexception;
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addMultiException(org.glassfish.hk.api.MultiException)>(v);
return null;
label:
v := @caughtexception;
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
return null;
label:
if v != null goto label;
v = new java.lang.AssertionError;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.glassfish.hk.api.ClassAnalyzer,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("null return from getConstructor method of analyzer \u for class \u0001");
specialinvoke v.<java.lang.AssertionError: void <init>(java.lang.Object)>(v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
return v;
label:
v = new org.jvnet.hk.internal.Utilities$2;
specialinvoke v.<org.jvnet.hk.internal.Utilities$2: void <init>(java.lang.reflect.Constructor)>(v);
staticinvoke <java.security.AccessController: java.lang.Object doPrivileged(java.security.PrivilegedAction)>(v);
return v;
catch org.glassfish.hk.api.MultiException from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public static java.util.Set getInitMethods(java.lang.Class, org.glassfish.hk.api.ClassAnalyzer, org.jvnet.hk.internal.Collector)
{
java.lang.Throwable v;
org.glassfish.hk.api.ClassAnalyzer v;
java.util.Set v, v, v, v;
java.lang.AssertionError v;
org.glassfish.hk.api.MultiException v;
java.lang.Class v;
java.lang.String v, v;
org.jvnet.hk.internal.Collector v;
v := @parameter: java.lang.Class;
v := @parameter: org.glassfish.hk.api.ClassAnalyzer;
v := @parameter: org.jvnet.hk.internal.Collector;
label:
v = interfaceinvoke v.<org.glassfish.hk.api.ClassAnalyzer: java.util.Set getInitializerMethods(java.lang.Class)>(v);
label:
goto label;
label:
v := @caughtexception;
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addMultiException(org.glassfish.hk.api.MultiException)>(v);
v = staticinvoke <java.util.Collections: java.util.Set emptySet()>();
return v;
label:
v := @caughtexception;
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
v = staticinvoke <java.util.Collections: java.util.Set emptySet()>();
return v;
label:
if v != null goto label;
v = new java.lang.AssertionError;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.glassfish.hk.api.ClassAnalyzer,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("null return from getInitializerMethods method of analyzer \u for class \u0001");
specialinvoke v.<java.lang.AssertionError: void <init>(java.lang.Object)>(v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
v = staticinvoke <java.util.Collections: java.util.Set emptySet()>();
return v;
label:
return v;
catch org.glassfish.hk.api.MultiException from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public static java.util.Set getInitFields(java.lang.Class, org.glassfish.hk.api.ClassAnalyzer, org.jvnet.hk.internal.Collector)
{
java.lang.Throwable v;
org.glassfish.hk.api.ClassAnalyzer v;
java.util.Set v, v, v, v;
java.lang.AssertionError v;
org.glassfish.hk.api.MultiException v;
java.lang.Class v;
java.lang.String v, v;
org.jvnet.hk.internal.Collector v;
v := @parameter: java.lang.Class;
v := @parameter: org.glassfish.hk.api.ClassAnalyzer;
v := @parameter: org.jvnet.hk.internal.Collector;
label:
v = interfaceinvoke v.<org.glassfish.hk.api.ClassAnalyzer: java.util.Set getFields(java.lang.Class)>(v);
label:
goto label;
label:
v := @caughtexception;
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addMultiException(org.glassfish.hk.api.MultiException)>(v);
v = staticinvoke <java.util.Collections: java.util.Set emptySet()>();
return v;
label:
v := @caughtexception;
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
v = staticinvoke <java.util.Collections: java.util.Set emptySet()>();
return v;
label:
if v != null goto label;
v = new java.lang.AssertionError;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.glassfish.hk.api.ClassAnalyzer,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("null return from getFields method of analyzer \u for class \u0001");
specialinvoke v.<java.lang.AssertionError: void <init>(java.lang.Object)>(v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
v = staticinvoke <java.util.Collections: java.util.Set emptySet()>();
return v;
label:
return v;
catch org.glassfish.hk.api.MultiException from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public static java.lang.reflect.Method getPostConstruct(java.lang.Class, org.glassfish.hk.api.ClassAnalyzer, org.jvnet.hk.internal.Collector)
{
java.lang.Throwable v;
org.glassfish.hk.api.MultiException v;
org.glassfish.hk.api.ClassAnalyzer v;
java.lang.Class v;
org.jvnet.hk.internal.Collector v;
java.lang.reflect.Method v;
v := @parameter: java.lang.Class;
v := @parameter: org.glassfish.hk.api.ClassAnalyzer;
v := @parameter: org.jvnet.hk.internal.Collector;
label:
v = interfaceinvoke v.<org.glassfish.hk.api.ClassAnalyzer: java.lang.reflect.Method getPostConstructMethod(java.lang.Class)>(v);
label:
return v;
label:
v := @caughtexception;
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addMultiException(org.glassfish.hk.api.MultiException)>(v);
return null;
label:
v := @caughtexception;
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
return null;
catch org.glassfish.hk.api.MultiException from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public static java.lang.reflect.Method getPreDestroy(java.lang.Class, org.glassfish.hk.api.ClassAnalyzer, org.jvnet.hk.internal.Collector)
{
java.lang.Throwable v;
org.glassfish.hk.api.MultiException v;
org.glassfish.hk.api.ClassAnalyzer v;
java.lang.Class v;
org.jvnet.hk.internal.Collector v;
java.lang.reflect.Method v;
v := @parameter: java.lang.Class;
v := @parameter: org.glassfish.hk.api.ClassAnalyzer;
v := @parameter: org.jvnet.hk.internal.Collector;
label:
v = interfaceinvoke v.<org.glassfish.hk.api.ClassAnalyzer: java.lang.reflect.Method getPreDestroyMethod(java.lang.Class)>(v);
label:
return v;
label:
v := @caughtexception;
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addMultiException(org.glassfish.hk.api.MultiException)>(v);
return null;
label:
v := @caughtexception;
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
return null;
catch org.glassfish.hk.api.MultiException from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public static java.lang.Class getFactoryAwareImplementationClass(org.glassfish.hk.api.ActiveDescriptor)
{
org.glassfish.hk.api.DescriptorType v, v;
org.glassfish.hk.api.ActiveDescriptor v;
java.lang.Class v, v;
boolean v;
v := @parameter: org.glassfish.hk.api.ActiveDescriptor;
v = interfaceinvoke v.<org.glassfish.hk.api.ActiveDescriptor: org.glassfish.hk.api.DescriptorType getDescriptorType()>();
v = <org.glassfish.hk.api.DescriptorType: org.glassfish.hk.api.DescriptorType CLASS>;
v = virtualinvoke v.<org.glassfish.hk.api.DescriptorType: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = interfaceinvoke v.<org.glassfish.hk.api.ActiveDescriptor: java.lang.Class getImplementationClass()>();
return v;
label:
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.lang.Class getFactoryProductionClass(org.glassfish.hk.api.ActiveDescriptor)>(v);
return v;
}
public static void checkLookupType(java.lang.Class)
{
java.lang.Class v;
java.lang.String v;
java.lang.IllegalArgumentException v;
boolean v, v, v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: boolean isAnnotation()>();
if v != 0 goto label;
return;
label:
v = virtualinvoke v.<java.lang.Class: boolean isAnnotationPresent(java.lang.Class)>(class "Ljakarta/inject/Scope;");
if v == 0 goto label;
return;
label:
v = virtualinvoke v.<java.lang.Class: boolean isAnnotationPresent(java.lang.Class)>(class "Ljakarta/inject/Qualifier;");
if v == 0 goto label;
return;
label:
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.Class)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Lookup type \u must be a scope or annotation");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
}
public static java.lang.Class translatePrimitiveType(java.lang.Class)
{
java.lang.Class v;
java.lang.Object v;
java.util.HashMap v;
v := @parameter: java.lang.Class;
v = <org.glassfish.hk.utilities.reflection.Constants: java.util.HashMap PRIMITIVE_MAP>;
v = virtualinvoke v.<java.util.HashMap: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
return v;
label:
return v;
}
public static void handleErrors(org.jvnet.hk.internal.NarrowResults, java.util.LinkedList)
{
java.lang.Throwable v;
org.glassfish.hk.api.ErrorType v;
org.glassfish.hk.api.ActiveDescriptor v;
org.jvnet.hk.internal.ErrorInformationImpl v;
java.util.LinkedList v;
org.jvnet.hk.internal.Collector v;
boolean v, v, v;
java.util.Iterator v, v, v;
org.jvnet.hk.internal.NarrowResults v;
org.glassfish.hk.api.Injectee v;
java.util.List v, v;
org.glassfish.hk.api.MultiException v, v;
java.lang.Object v, v, v;
v := @parameter: org.jvnet.hk.internal.NarrowResults;
v := @parameter: java.util.LinkedList;
v = new org.jvnet.hk.internal.Collector;
specialinvoke v.<org.jvnet.hk.internal.Collector: void <init>()>();
v = virtualinvoke v.<org.jvnet.hk.internal.NarrowResults: java.util.List getErrors()>();
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<java.util.LinkedList: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
label:
v = new org.jvnet.hk.internal.ErrorInformationImpl;
v = <org.glassfish.hk.api.ErrorType: org.glassfish.hk.api.ErrorType FAILURE_TO_REIFY>;
v = virtualinvoke v.<org.jvnet.hk.internal.ErrorResults: org.glassfish.hk.api.ActiveDescriptor getDescriptor()>();
v = virtualinvoke v.<org.jvnet.hk.internal.ErrorResults: org.glassfish.hk.api.Injectee getInjectee()>();
v = virtualinvoke v.<org.jvnet.hk.internal.ErrorResults: org.glassfish.hk.api.MultiException getMe()>();
specialinvoke v.<org.jvnet.hk.internal.ErrorInformationImpl: void <init>(org.glassfish.hk.api.ErrorType,org.glassfish.hk.api.Descriptor,org.glassfish.hk.api.Injectee,org.glassfish.hk.api.MultiException)>(v, v, v, v);
interfaceinvoke v.<org.glassfish.hk.api.ErrorService: void onFailure(org.glassfish.hk.api.ErrorInformation)>(v);
label:
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<org.glassfish.hk.api.MultiException: java.util.List getErrors()>();
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
goto label;
label:
v := @caughtexception;
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
goto label;
label:
virtualinvoke v.<org.jvnet.hk.internal.Collector: void throwIfErrors()>();
return;
catch org.glassfish.hk.api.MultiException from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public static java.lang.Class loadClass(java.lang.String, org.glassfish.hk.api.Descriptor, org.jvnet.hk.internal.Collector)
{
java.lang.Throwable v, v;
java.util.Iterator v;
java.util.List v;
org.glassfish.hk.api.HK2Loader v;
java.lang.Class v, v, v;
java.lang.Object v;
java.lang.ClassLoader v;
java.lang.String v;
org.jvnet.hk.internal.Collector v;
boolean v, v;
org.glassfish.hk.api.Descriptor v;
v := @parameter: java.lang.String;
v := @parameter: org.glassfish.hk.api.Descriptor;
v := @parameter: org.jvnet.hk.internal.Collector;
v = interfaceinvoke v.<org.glassfish.hk.api.Descriptor: org.glassfish.hk.api.HK2Loader getLoader()>();
if v != null goto label;
v = class "Lorg/jvnet/hk2/internal/Utilities;";
v = virtualinvoke v.<java.lang.Class: java.lang.ClassLoader getClassLoader()>();
if v != null goto label;
v = staticinvoke <java.lang.ClassLoader: java.lang.ClassLoader getSystemClassLoader()>();
label:
v = virtualinvoke v.<java.lang.ClassLoader: java.lang.Class loadClass(java.lang.String)>(v);
label:
return v;
label:
v := @caughtexception;
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
return null;
label:
v = interfaceinvoke v.<org.glassfish.hk.api.HK2Loader: java.lang.Class loadClass(java.lang.String)>(v);
label:
return v;
label:
v := @caughtexception;
v = v instanceof org.glassfish.hk.api.MultiException;
if v == 0 goto label;
v = virtualinvoke v.<org.glassfish.hk.api.MultiException: java.util.List getErrors()>();
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
goto label;
label:
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
label:
return null;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public static java.lang.Class loadClass(java.lang.String, org.glassfish.hk.api.Injectee)
{
java.lang.Throwable v, v;
java.lang.Thread v;
java.lang.String v;
boolean v, v, v;
org.glassfish.hk.api.Injectee v;
org.glassfish.hk.api.MultiException v, v;
java.lang.Class v, v, v, v, v, v, v;
java.lang.ClassLoader v, v;
java.lang.reflect.AnnotatedElement v;
v := @parameter: java.lang.String;
v := @parameter: org.glassfish.hk.api.Injectee;
if v == null goto label;
v = interfaceinvoke v.<org.glassfish.hk.api.Injectee: java.lang.reflect.AnnotatedElement getParent()>();
v = v instanceof java.lang.reflect.Constructor;
if v == 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Constructor: java.lang.Class getDeclaringClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.ClassLoader getClassLoader()>();
goto label;
label:
v = v instanceof java.lang.reflect.Method;
if v == 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getDeclaringClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.ClassLoader getClassLoader()>();
goto label;
label:
v = v instanceof java.lang.reflect.Field;
if v == 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Field: java.lang.Class getDeclaringClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.ClassLoader getClassLoader()>();
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.ClassLoader getClassLoader()>();
goto label;
label:
v = class "Lorg/jvnet/hk2/internal/Utilities;";
v = virtualinvoke v.<java.lang.Class: java.lang.ClassLoader getClassLoader()>();
label:
v = virtualinvoke v.<java.lang.ClassLoader: java.lang.Class loadClass(java.lang.String)>(v);
label:
return v;
label:
v := @caughtexception;
v = staticinvoke <java.lang.Thread: java.lang.Thread currentThread()>();
v = virtualinvoke v.<java.lang.Thread: java.lang.ClassLoader getContextClassLoader()>();
if v == null goto label;
label:
v = virtualinvoke v.<java.lang.ClassLoader: java.lang.Class loadClass(java.lang.String)>(v);
label:
return v;
label:
v := @caughtexception;
v = new org.glassfish.hk.api.MultiException;
specialinvoke v.<org.glassfish.hk.api.MultiException: void <init>(java.lang.Throwable)>(v);
virtualinvoke v.<org.glassfish.hk.api.MultiException: void addError(java.lang.Throwable)>(v);
throw v;
label:
v = new org.glassfish.hk.api.MultiException;
specialinvoke v.<org.glassfish.hk.api.MultiException: void <init>(java.lang.Throwable)>(v);
throw v;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public static java.lang.Class getInjectionResolverType(org.glassfish.hk.api.ActiveDescriptor)
{
java.util.Iterator v;
java.util.Set v;
org.glassfish.hk.api.ActiveDescriptor v;
java.lang.reflect.Type v;
java.lang.Class v, v, v;
java.lang.Object v;
boolean v, v, v, v, v;
v := @parameter: org.glassfish.hk.api.ActiveDescriptor;
v = interfaceinvoke v.<org.glassfish.hk.api.ActiveDescriptor: java.util.Set getContractTypes()>();
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.Class getRawClass(java.lang.reflect.Type)>(v);
v = class "Lorg/glassfish/hk2/api/InjectionResolver;";
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = v instanceof java.lang.reflect.ParameterizedType;
if v != 0 goto label;
return null;
label:
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.reflect.Type getFirstTypeArgument(java.lang.reflect.Type)>(v);
v = v instanceof java.lang.Class;
if v != 0 goto label;
return null;
label:
v = class "Ljava/lang/annotation/Annotation;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
return null;
label:
return v;
label:
return null;
}
private static java.lang.Class getFactoryProductionClass(org.glassfish.hk.api.ActiveDescriptor)
{
java.util.Iterator v;
java.util.Set v, v;
java.lang.AssertionError v;
org.glassfish.hk.api.ActiveDescriptor v;
org.glassfish.hk.api.MultiException v;
java.lang.reflect.Type v;
int v;
java.lang.Class v, v;
java.lang.Object v;
java.lang.String v, v;
v := @parameter: org.glassfish.hk.api.ActiveDescriptor;
v = interfaceinvoke v.<org.glassfish.hk.api.ActiveDescriptor: java.lang.Class getImplementationClass()>();
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.lang.reflect.Type getFactoryProductionType(java.lang.Class)>(v);
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.Class getRawClass(java.lang.reflect.Type)>(v);
if v != null goto label;
v = interfaceinvoke v.<org.glassfish.hk.api.ActiveDescriptor: java.util.Set getContractTypes()>();
v = interfaceinvoke v.<java.util.Set: int size()>();
if v != 1 goto label;
v = interfaceinvoke v.<org.glassfish.hk.api.ActiveDescriptor: java.util.Set getContractTypes()>();
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.Class getRawClass(java.lang.reflect.Type)>(v);
label:
if v != null goto label;
v = new org.glassfish.hk.api.MultiException;
v = new java.lang.AssertionError;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Could not find true produced type of factory \u0001");
specialinvoke v.<java.lang.AssertionError: void <init>(java.lang.Object)>(v);
specialinvoke v.<org.glassfish.hk.api.MultiException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
return v;
}
public static java.lang.reflect.Type getFactoryProductionType(java.lang.Class)
{
java.util.Iterator v;
java.util.Set v, v;
java.lang.reflect.Type v;
java.lang.reflect.Type[] v;
java.lang.Class v, v;
java.lang.Object v;
java.lang.String v;
v := @parameter: java.lang.Class;
v = class "Lorg/glassfish/hk2/api/Factory;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = staticinvoke <java.util.Collections: java.util.Set singleton(java.lang.Object)>(v);
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.util.Set getTypeClosure(java.lang.reflect.Type,java.util.Set)>(v, v);
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<java.lang.reflect.ParameterizedType: java.lang.reflect.Type[] getActualTypeArguments()>();
v = v[0];
return v;
}
public static void checkFactoryType(java.lang.Class, org.jvnet.hk.internal.Collector)
{
java.lang.IllegalArgumentException v;
java.lang.reflect.Type v, v;
int v, v;
java.lang.reflect.Type[] v;
java.lang.Class v, v, v;
java.lang.String v, v;
org.jvnet.hk.internal.Collector v;
boolean v, v;
v := @parameter: java.lang.Class;
v := @parameter: org.jvnet.hk.internal.Collector;
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Type[] getGenericInterfaces()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.Class getRawClass(java.lang.reflect.Type)>(v);
if v == null goto label;
v = class "Lorg/glassfish/hk2/api/Factory;";
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.reflect.Type getFirstTypeArgument(java.lang.reflect.Type)>(v);
v = v instanceof java.lang.reflect.WildcardType;
if v == 0 goto label;
v = new java.lang.IllegalArgumentException;
v = staticinvoke <org.glassfish.hk.utilities.reflection.Pretty: java.lang.String clazz(java.lang.Class)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("The class \u has a Wildcard as its type");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
label:
v = v + 1;
goto label;
label:
return;
}
private static boolean hasContract(java.lang.Class)
{
java.lang.'annotation'.Annotation[] v;
int v, v;
java.lang.'annotation'.Annotation v;
java.lang.Class v, v;
boolean v, v;
v := @parameter: java.lang.Class;
if v != null goto label;
return 0;
label:
v = virtualinvoke v.<java.lang.Class: boolean isAnnotationPresent(java.lang.Class)>(class "Lorg/jvnet/hk2/annotations/Contract;");
if v == 0 goto label;
return 1;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.'annotation'.Annotation[] getAnnotations()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = interfaceinvoke v.<java.lang.'annotation'.Annotation: java.lang.Class annotationType()>();
v = virtualinvoke v.<java.lang.Class: boolean isAnnotationPresent(java.lang.Class)>(class "Lorg/glassfish/hk2/api/ContractIndicator;");
if v == 0 goto label;
return 1;
label:
v = v + 1;
goto label;
label:
return 0;
}
private static java.util.Set getAutoAdvertisedTypes(java.lang.reflect.Type)
{
java.util.Iterator v;
java.lang.Class[] v;
java.util.Set v;
java.lang.reflect.Type v;
int v, v;
java.lang.'annotation'.Annotation v;
java.lang.Class v, v, v;
java.lang.Object v;
java.util.LinkedHashSet v;
boolean v, v;
v := @parameter: java.lang.reflect.Type;
v = new java.util.LinkedHashSet;
specialinvoke v.<java.util.LinkedHashSet: void <init>()>();
virtualinvoke v.<java.util.LinkedHashSet: boolean add(java.lang.Object)>(v);
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.Class getRawClass(java.lang.reflect.Type)>(v);
if v != null goto label;
return v;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lorg/jvnet/hk2/annotations/ContractsProvided;");
if v == null goto label;
virtualinvoke v.<java.util.LinkedHashSet: void clear()>();
v = interfaceinvoke v.<org.jvnet.hk.annotations.ContractsProvided: java.lang.Class[] value()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
virtualinvoke v.<java.util.LinkedHashSet: boolean add(java.lang.Object)>(v);
v = v + 1;
goto label;
label:
return v;
label:
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.util.Set getAllTypes(java.lang.reflect.Type)>(v);
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.Class getRawClass(java.lang.reflect.Type)>(v);
v = staticinvoke <org.jvnet.hk.internal.Utilities: boolean hasContract(java.lang.Class)>(v);
if v == 0 goto label;
virtualinvoke v.<java.util.LinkedHashSet: boolean add(java.lang.Object)>(v);
goto label;
label:
return v;
}
public static org.jvnet.hk.internal.AutoActiveDescriptor createAutoDescriptor(java.lang.Class, org.jvnet.hk.internal.ServiceLocatorImpl) throws org.glassfish.hk.api.MultiException, java.lang.IllegalArgumentException, java.lang.IllegalStateException
{
org.glassfish.hk.api.DescriptorType v;
org.glassfish.hk.utilities.reflection.ScopeInfo v;
org.jvnet.hk.internal.AutoActiveDescriptor v;
org.jvnet.hk.internal.PerLocatorUtilities v;
boolean v, v, v, v, v, v;
java.util.Set v, v, v;
org.jvnet.hk.internal.ServiceLocatorImpl v;
java.lang.'annotation'.Annotation v, v, v, v, v, v, v;
java.util.HashMap v;
int v;
java.lang.Boolean v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v;
org.jvnet.hk.internal.Collector v;
org.jvnet.hk.internal.ClazzCreator v;
java.util.Iterator v;
org.glassfish.hk.api.DescriptorVisibility v;
java.io.IOException v;
java.lang.IllegalArgumentException v, v;
java.lang.Class v, v;
java.lang.Object v;
v := @parameter: java.lang.Class;
v := @parameter: org.jvnet.hk.internal.ServiceLocatorImpl;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>()>();
throw v;
label:
v = new org.jvnet.hk.internal.Collector;
specialinvoke v.<org.jvnet.hk.internal.Collector: void <init>()>();
v = null;
v = null;
v = null;
v = null;
v = virtualinvoke v.<java.lang.Class: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lorg/jvnet/hk2/annotations/Service;");
if v == null goto label;
v = "";
v = interfaceinvoke v.<org.jvnet.hk.annotations.Service: java.lang.String name()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = interfaceinvoke v.<org.jvnet.hk.annotations.Service: java.lang.String name()>();
label:
v = "";
v = interfaceinvoke v.<org.jvnet.hk.annotations.Service: java.lang.String metadata()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = interfaceinvoke v.<org.jvnet.hk.annotations.Service: java.lang.String metadata()>();
label:
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.util.Set getQualifierAnnotations(java.lang.reflect.AnnotatedElement)>(v);
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.String getNameFromAllQualifiers(java.util.Set,java.lang.reflect.AnnotatedElement)>(v, v);
if v == null goto label;
if v == null goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = new java.lang.IllegalArgumentException;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("The class \u has an @Service name of \u and has an @Named value of \u which names do not match");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
if v != null goto label;
if v == null goto label;
v = v;
label:
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.util.Set getAllQualifiers(java.lang.reflect.AnnotatedElement,java.lang.String,org.jvnet.hk.internal.Collector)>(v, v, v);
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.util.Set getAutoAdvertisedTypes(java.lang.reflect.Type)>(v);
v = staticinvoke <org.jvnet.hk.internal.Utilities: org.glassfish.hk.utilities.reflection.ScopeInfo getScopeInfo(java.lang.reflect.AnnotatedElement,org.glassfish.hk.api.Descriptor,org.jvnet.hk.internal.Collector)>(v, null, v);
v = virtualinvoke v.<org.glassfish.hk.utilities.reflection.ScopeInfo: java.lang.Class getAnnoType()>();
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: org.jvnet.hk.internal.PerLocatorUtilities getPerLocatorUtilities()>();
v = virtualinvoke v.<org.jvnet.hk.internal.PerLocatorUtilities: java.lang.String getAutoAnalyzerName(java.lang.Class)>(v);
v = new org.jvnet.hk.internal.ClazzCreator;
specialinvoke v.<org.jvnet.hk.internal.ClazzCreator: void <init>(org.jvnet.hk.internal.ServiceLocatorImpl,java.lang.Class)>(v, v);
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
if v == null goto label;
label:
staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: void readMetadataMap(java.lang.String,java.util.Map)>(v, v);
label:
goto label;
label:
v := @caughtexception;
interfaceinvoke v.<java.util.Map: void clear()>();
staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: void parseServiceMetadataString(java.lang.String,java.util.Map)>(v, v);
label:
virtualinvoke v.<org.jvnet.hk.internal.Collector: void throwIfErrors()>();
v = virtualinvoke v.<org.glassfish.hk.utilities.reflection.ScopeInfo: java.lang.'annotation'.Annotation getScope()>();
if v == null goto label;
v = virtualinvoke v.<org.glassfish.hk.utilities.reflection.ScopeInfo: java.lang.'annotation'.Annotation getScope()>();
staticinvoke <org.glassfish.hk.utilities.BuilderHelper: void getMetadataValues(java.lang.'annotation'.Annotation,java.util.Map)>(v, v);
label:
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
staticinvoke <org.glassfish.hk.utilities.BuilderHelper: void getMetadataValues(java.lang.'annotation'.Annotation,java.util.Map)>(v, v);
goto label;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lorg/glassfish/hk2/api/UseProxy;");
if v == null goto label;
v = interfaceinvoke v.<org.glassfish.hk.api.UseProxy: boolean value()>();
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
label:
v = virtualinvoke v.<java.lang.Class: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lorg/glassfish/hk2/api/ProxyForSameScope;");
if v == null goto label;
v = interfaceinvoke v.<org.glassfish.hk.api.ProxyForSameScope: boolean value()>();
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
label:
v = <org.glassfish.hk.api.DescriptorVisibility: org.glassfish.hk.api.DescriptorVisibility NORMAL>;
v = virtualinvoke v.<java.lang.Class: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lorg/glassfish/hk2/api/Visibility;");
if v == null goto label;
v = interfaceinvoke v.<org.glassfish.hk.api.Visibility: org.glassfish.hk.api.DescriptorVisibility value()>();
label:
v = staticinvoke <org.glassfish.hk.utilities.BuilderHelper: int getRank(java.lang.Class)>(v);
v = new org.jvnet.hk.internal.AutoActiveDescriptor;
v = <org.glassfish.hk.api.DescriptorType: org.glassfish.hk.api.DescriptorType CLASS>;
specialinvoke v.<org.jvnet.hk.internal.AutoActiveDescriptor: void <init>(java.lang.Class,org.jvnet.hk.internal.Creator,java.util.Set,java.lang.Class,java.lang.String,java.util.Set,org.glassfish.hk.api.DescriptorVisibility,int,java.lang.Boolean,java.lang.Boolean,java.lang.String,java.util.Map,org.glassfish.hk.api.DescriptorType,java.lang.reflect.Type)>(v, v, v, v, v, v, v, v, v, v, v, v, v, v);
v = virtualinvoke v.<org.glassfish.hk.utilities.reflection.ScopeInfo: java.lang.'annotation'.Annotation getScope()>();
virtualinvoke v.<org.jvnet.hk.internal.AutoActiveDescriptor: void setScopeAsAnnotation(java.lang.'annotation'.Annotation)>(v);
virtualinvoke v.<org.jvnet.hk.internal.ClazzCreator: void initialize(org.glassfish.hk.api.ActiveDescriptor,java.lang.String,org.jvnet.hk.internal.Collector)>(v, v, v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void throwIfErrors()>();
return v;
catch java.io.IOException from label to label with label;
}
public static org.jvnet.hk.internal.AutoActiveDescriptor createAutoFactoryDescriptor(java.lang.Class, org.glassfish.hk.api.ActiveDescriptor, org.jvnet.hk.internal.ServiceLocatorImpl) throws org.glassfish.hk.api.MultiException, java.lang.IllegalArgumentException, java.lang.IllegalStateException
{
org.glassfish.hk.api.DescriptorType v;
org.glassfish.hk.utilities.reflection.ScopeInfo v;
org.jvnet.hk.internal.AutoActiveDescriptor v;
org.glassfish.hk.api.ActiveDescriptor v;
java.lang.reflect.Method v;
boolean v, v, v;
org.jvnet.hk.internal.FactoryCreator v;
java.util.Set v, v;
java.lang.reflect.Type v;
org.jvnet.hk.internal.ServiceLocatorImpl v;
java.lang.'annotation'.Annotation v, v, v, v, v, v, v;
java.util.HashMap v;
int v;
java.lang.Boolean v, v;
java.lang.String v, v, v;
org.jvnet.hk.internal.Collector v;
java.util.Iterator v;
org.glassfish.hk.api.DescriptorVisibility v;
java.lang.IllegalArgumentException v, v;
java.lang.Class v, v, v;
java.lang.Object v;
v := @parameter: java.lang.Class;
v := @parameter: org.glassfish.hk.api.ActiveDescriptor;
v := @parameter: org.jvnet.hk.internal.ServiceLocatorImpl;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>()>();
throw v;
label:
v = new org.jvnet.hk.internal.Collector;
specialinvoke v.<org.jvnet.hk.internal.Collector: void <init>()>();
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.lang.reflect.Type getFactoryProductionType(java.lang.Class)>(v);
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.lang.reflect.Method getFactoryProvideMethod(java.lang.Class)>(v);
if v != null goto label;
v = new java.lang.IllegalArgumentException;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Could not find the provide method on the class \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void throwIfErrors()>();
label:
v = null;
v = null;
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.util.Set getQualifierAnnotations(java.lang.reflect.AnnotatedElement)>(v);
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.String getNameFromAllQualifiers(java.util.Set,java.lang.reflect.AnnotatedElement)>(v, v);
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.util.Set getAutoAdvertisedTypes(java.lang.reflect.Type)>(v);
v = staticinvoke <org.jvnet.hk.internal.Utilities: org.glassfish.hk.utilities.reflection.ScopeInfo getScopeInfo(java.lang.reflect.AnnotatedElement,org.glassfish.hk.api.Descriptor,org.jvnet.hk.internal.Collector)>(v, null, v);
v = virtualinvoke v.<org.glassfish.hk.utilities.reflection.ScopeInfo: java.lang.Class getAnnoType()>();
v = new org.jvnet.hk.internal.FactoryCreator;
specialinvoke v.<org.jvnet.hk.internal.FactoryCreator: void <init>(org.glassfish.hk.api.ServiceLocator,org.glassfish.hk.api.ActiveDescriptor)>(v, v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void throwIfErrors()>();
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = virtualinvoke v.<org.glassfish.hk.utilities.reflection.ScopeInfo: java.lang.'annotation'.Annotation getScope()>();
if v == null goto label;
v = virtualinvoke v.<org.glassfish.hk.utilities.reflection.ScopeInfo: java.lang.'annotation'.Annotation getScope()>();
staticinvoke <org.glassfish.hk.utilities.BuilderHelper: void getMetadataValues(java.lang.'annotation'.Annotation,java.util.Map)>(v, v);
label:
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
staticinvoke <org.glassfish.hk.utilities.BuilderHelper: void getMetadataValues(java.lang.'annotation'.Annotation,java.util.Map)>(v, v);
goto label;
label:
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lorg/glassfish/hk2/api/UseProxy;");
if v == null goto label;
v = interfaceinvoke v.<org.glassfish.hk.api.UseProxy: boolean value()>();
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
label:
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lorg/glassfish/hk2/api/ProxyForSameScope;");
if v == null goto label;
v = interfaceinvoke v.<org.glassfish.hk.api.ProxyForSameScope: boolean value()>();
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
label:
v = <org.glassfish.hk.api.DescriptorVisibility: org.glassfish.hk.api.DescriptorVisibility NORMAL>;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lorg/glassfish/hk2/api/Visibility;");
if v == null goto label;
v = interfaceinvoke v.<org.glassfish.hk.api.Visibility: org.glassfish.hk.api.DescriptorVisibility value()>();
label:
v = 0;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lorg/glassfish/hk2/api/Rank;");
if v == null goto label;
v = interfaceinvoke v.<org.glassfish.hk.api.Rank: int value()>();
label:
v = new org.jvnet.hk.internal.AutoActiveDescriptor;
v = interfaceinvoke v.<org.glassfish.hk.api.ActiveDescriptor: java.lang.Class getImplementationClass()>();
v = <org.glassfish.hk.api.DescriptorType: org.glassfish.hk.api.DescriptorType PROVIDE_METHOD>;
specialinvoke v.<org.jvnet.hk.internal.AutoActiveDescriptor: void <init>(java.lang.Class,org.jvnet.hk.internal.Creator,java.util.Set,java.lang.Class,java.lang.String,java.util.Set,org.glassfish.hk.api.DescriptorVisibility,int,java.lang.Boolean,java.lang.Boolean,java.lang.String,java.util.Map,org.glassfish.hk.api.DescriptorType,java.lang.reflect.Type)>(v, v, v, v, v, v, v, v, v, v, null, v, v, null);
v = virtualinvoke v.<org.glassfish.hk.utilities.reflection.ScopeInfo: java.lang.'annotation'.Annotation getScope()>();
virtualinvoke v.<org.jvnet.hk.internal.AutoActiveDescriptor: void setScopeAsAnnotation(java.lang.'annotation'.Annotation)>(v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void throwIfErrors()>();
return v;
}
public static void justPreDestroy(java.lang.Object, org.jvnet.hk.internal.ServiceLocatorImpl, java.lang.String)
{
java.lang.Throwable v;
java.lang.Object[] v;
org.glassfish.hk.api.ClassAnalyzer v;
java.lang.IllegalArgumentException v;
org.glassfish.hk.api.MultiException v;
org.jvnet.hk.internal.ServiceLocatorImpl v;
java.lang.Class v;
java.lang.Object v;
java.lang.String v;
org.jvnet.hk.internal.Collector v;
java.lang.reflect.Method v;
boolean v;
v := @parameter: java.lang.Object;
v := @parameter: org.jvnet.hk.internal.ServiceLocatorImpl;
v := @parameter: java.lang.String;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>()>();
throw v;
label:
v = new org.jvnet.hk.internal.Collector;
specialinvoke v.<org.jvnet.hk.internal.Collector: void <init>()>();
v = staticinvoke <org.jvnet.hk.internal.Utilities: org.glassfish.hk.api.ClassAnalyzer getClassAnalyzer(org.jvnet.hk.internal.ServiceLocatorImpl,java.lang.String,org.jvnet.hk.internal.Collector)>(v, v, v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void throwIfErrors()>();
virtualinvoke v.<org.jvnet.hk.internal.Collector: void throwIfErrors()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.lang.reflect.Method getPreDestroy(java.lang.Class,org.glassfish.hk.api.ClassAnalyzer,org.jvnet.hk.internal.Collector)>(v, v, v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void throwIfErrors()>();
if v != null goto label;
return;
label:
v = newarray (java.lang.Object)[0];
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: boolean getNeutralContextClassLoader()>();
staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.Object invoke(java.lang.Object,java.lang.reflect.Method,java.lang.Object[],boolean)>(v, v, v, v);
label:
goto label;
label:
v := @caughtexception;
v = new org.glassfish.hk.api.MultiException;
specialinvoke v.<org.glassfish.hk.api.MultiException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
public static void justPostConstruct(java.lang.Object, org.jvnet.hk.internal.ServiceLocatorImpl, java.lang.String)
{
java.lang.Throwable v;
java.lang.Object[] v;
org.glassfish.hk.api.ClassAnalyzer v;
java.lang.IllegalArgumentException v;
org.glassfish.hk.api.MultiException v;
org.jvnet.hk.internal.ServiceLocatorImpl v;
java.lang.Class v;
java.lang.Object v;
java.lang.String v;
org.jvnet.hk.internal.Collector v;
java.lang.reflect.Method v;
boolean v;
v := @parameter: java.lang.Object;
v := @parameter: org.jvnet.hk.internal.ServiceLocatorImpl;
v := @parameter: java.lang.String;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>()>();
throw v;
label:
v = new org.jvnet.hk.internal.Collector;
specialinvoke v.<org.jvnet.hk.internal.Collector: void <init>()>();
v = staticinvoke <org.jvnet.hk.internal.Utilities: org.glassfish.hk.api.ClassAnalyzer getClassAnalyzer(org.jvnet.hk.internal.ServiceLocatorImpl,java.lang.String,org.jvnet.hk.internal.Collector)>(v, v, v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void throwIfErrors()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.lang.reflect.Method getPostConstruct(java.lang.Class,org.glassfish.hk.api.ClassAnalyzer,org.jvnet.hk.internal.Collector)>(v, v, v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void throwIfErrors()>();
if v != null goto label;
return;
label:
v = newarray (java.lang.Object)[0];
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: boolean getNeutralContextClassLoader()>();
staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.Object invoke(java.lang.Object,java.lang.reflect.Method,java.lang.Object[],boolean)>(v, v, v, v);
label:
goto label;
label:
v := @caughtexception;
v = new org.glassfish.hk.api.MultiException;
specialinvoke v.<org.glassfish.hk.api.MultiException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
public static transient java.lang.Object justAssistedInject(java.lang.Object, java.lang.reflect.Method, org.jvnet.hk.internal.ServiceLocatorImpl, org.glassfish.hk.api.ServiceHandle, org.glassfish.hk.api.MethodParameter[])
{
java.lang.Integer v, v, v;
org.jvnet.hk.internal.PerLocatorUtilities v;
java.lang.reflect.Method v;
boolean v, v;
org.glassfish.hk.api.MethodParameter v;
java.util.List v;
org.glassfish.hk.api.MultiException v, v;
org.jvnet.hk.internal.ServiceLocatorImpl v;
java.lang.Throwable v;
java.lang.Object[] v;
java.util.HashMap v;
java.lang.AssertionError v;
int v, v, v, v, v, v;
java.lang.String v, v, v, v;
java.lang.Class[] v;
org.glassfish.hk.api.InjectionResolver v;
java.lang.IllegalArgumentException v, v, v;
org.glassfish.hk.api.ServiceHandle v;
org.glassfish.hk.api.MethodParameter[] v, v;
java.lang.Class v;
java.lang.Object v, v, v, v, v, v;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.reflect.Method;
v := @parameter: org.jvnet.hk.internal.ServiceLocatorImpl;
v := @parameter: org.glassfish.hk.api.ServiceHandle;
v := @parameter: org.glassfish.hk.api.MethodParameter[];
if v == null goto label;
if v != null goto label;
label:
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.Object,java.lang.reflect.Method)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("injectMe=\u method=\u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
if v != null goto label;
v = newarray (org.glassfish.hk.api.MethodParameter)[0];
label:
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class[] getParameterTypes()>();
v = lengthof v;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = v;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = interfaceinvoke v.<org.glassfish.hk.api.MethodParameter: int getParameterPosition()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v = interfaceinvoke v.<java.util.Map: boolean containsKey(java.lang.Object)>(v);
if v == 0 goto label;
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("The given values contain more than one value for index \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
if v < 0 goto label;
if v < v goto label;
label:
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.glassfish.hk.api.MethodParameter,java.lang.reflect.Method)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Index of \u is out of range of the method parameters \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
v = v + 1;
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.util.List getMethodInjectees(java.lang.Class,java.lang.reflect.Method,org.glassfish.hk.api.ActiveDescriptor,java.util.Map)>(v, v, null, v);
v = newarray (java.lang.Object)[v];
v = 0;
label:
v = interfaceinvoke v.<java.util.List: int size()>();
if v >= v goto label;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
if v != null goto label;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
v = new java.lang.AssertionError;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int,java.lang.reflect.Method,java.lang.Object,java.util.Map)>(v, v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Error getting values \u method=\u injectMe=\u knownValues=\u0001");
specialinvoke v.<java.lang.AssertionError: void <init>(java.lang.Object)>(v);
throw v;
label:
v = interfaceinvoke v.<org.glassfish.hk.api.MethodParameter: java.lang.Object getParameterValue()>();
v[v] = v;
goto label;
label:
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: org.jvnet.hk.internal.PerLocatorUtilities getPerLocatorUtilities()>();
v = virtualinvoke v.<org.jvnet.hk.internal.PerLocatorUtilities: org.glassfish.hk.api.InjectionResolver getInjectionResolver(org.jvnet.hk.internal.ServiceLocatorImpl,org.glassfish.hk.api.Injectee)>(v, v);
v = interfaceinvoke v.<org.glassfish.hk.api.InjectionResolver: java.lang.Object resolve(org.glassfish.hk.api.Injectee,org.glassfish.hk.api.ServiceHandle)>(v, v);
v[v] = v;
label:
v = v + 1;
goto label;
label:
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: boolean getNeutralContextClassLoader()>();
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.Object invoke(java.lang.Object,java.lang.reflect.Method,java.lang.Object[],boolean)>(v, v, v, v);
label:
return v;
label:
v := @caughtexception;
throw v;
label:
v := @caughtexception;
v = new org.glassfish.hk.api.MultiException;
specialinvoke v.<org.glassfish.hk.api.MultiException: void <init>(java.lang.Throwable)>(v);
throw v;
catch org.glassfish.hk.api.MultiException from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public static void justInject(java.lang.Object, org.jvnet.hk.internal.ServiceLocatorImpl, java.lang.String)
{
org.jvnet.hk.internal.PerLocatorUtilities v, v;
boolean v, v, v, v;
org.glassfish.hk.api.ClassAnalyzer v;
java.util.Set v, v;
java.util.List v, v;
org.glassfish.hk.api.MultiException v, v, v, v;
org.jvnet.hk.internal.ServiceLocatorImpl v;
java.lang.Throwable v, v;
java.lang.Object[] v;
int v, v;
java.lang.String v;
org.jvnet.hk.internal.Collector v;
java.util.Iterator v, v, v;
org.glassfish.hk.api.InjectionResolver v, v;
java.lang.IllegalArgumentException v;
java.lang.Class v;
java.lang.Object v, v, v, v, v, v, v;
v := @parameter: java.lang.Object;
v := @parameter: org.jvnet.hk.internal.ServiceLocatorImpl;
v := @parameter: java.lang.String;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>()>();
throw v;
label:
v = new org.jvnet.hk.internal.Collector;
specialinvoke v.<org.jvnet.hk.internal.Collector: void <init>()>();
v = staticinvoke <org.jvnet.hk.internal.Utilities: org.glassfish.hk.api.ClassAnalyzer getClassAnalyzer(org.jvnet.hk.internal.ServiceLocatorImpl,java.lang.String,org.jvnet.hk.internal.Collector)>(v, v, v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void throwIfErrors()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.util.Set getInitFields(java.lang.Class,org.glassfish.hk.api.ClassAnalyzer,org.jvnet.hk.internal.Collector)>(v, v, v);
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.util.Set getInitMethods(java.lang.Class,org.glassfish.hk.api.ClassAnalyzer,org.jvnet.hk.internal.Collector)>(v, v, v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void throwIfErrors()>();
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: org.jvnet.hk.internal.PerLocatorUtilities getPerLocatorUtilities()>();
v = virtualinvoke v.<org.jvnet.hk.internal.PerLocatorUtilities: org.glassfish.hk.api.InjectionResolver getInjectionResolver(org.jvnet.hk.internal.ServiceLocatorImpl,java.lang.reflect.AnnotatedElement)>(v, v);
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.util.List getFieldInjectees(java.lang.Class,java.lang.reflect.Field,org.glassfish.hk.api.ActiveDescriptor)>(v, v, null);
staticinvoke <org.jvnet.hk.internal.Utilities: void validateSelfInjectees(org.glassfish.hk.api.ActiveDescriptor,java.util.List,org.jvnet.hk.internal.Collector)>(null, v, v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void throwIfErrors()>();
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(0);
v = interfaceinvoke v.<org.glassfish.hk.api.InjectionResolver: java.lang.Object resolve(org.glassfish.hk.api.Injectee,org.glassfish.hk.api.ServiceHandle)>(v, null);
label:
staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: void setField(java.lang.reflect.Field,java.lang.Object,java.lang.Object)>(v, v, v);
label:
goto label;
label:
v := @caughtexception;
throw v;
label:
v := @caughtexception;
v = new org.glassfish.hk.api.MultiException;
specialinvoke v.<org.glassfish.hk.api.MultiException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.util.List getMethodInjectees(java.lang.Class,java.lang.reflect.Method,org.glassfish.hk.api.ActiveDescriptor)>(v, v, null);
staticinvoke <org.jvnet.hk.internal.Utilities: void validateSelfInjectees(org.glassfish.hk.api.ActiveDescriptor,java.util.List,org.jvnet.hk.internal.Collector)>(null, v, v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void throwIfErrors()>();
v = interfaceinvoke v.<java.util.List: int size()>();
v = newarray (java.lang.Object)[v];
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: org.jvnet.hk.internal.PerLocatorUtilities getPerLocatorUtilities()>();
v = virtualinvoke v.<org.jvnet.hk.internal.PerLocatorUtilities: org.glassfish.hk.api.InjectionResolver getInjectionResolver(org.jvnet.hk.internal.ServiceLocatorImpl,org.glassfish.hk.api.Injectee)>(v, v);
v = virtualinvoke v.<org.jvnet.hk.internal.SystemInjecteeImpl: int getPosition()>();
v = interfaceinvoke v.<org.glassfish.hk.api.InjectionResolver: java.lang.Object resolve(org.glassfish.hk.api.Injectee,org.glassfish.hk.api.ServiceHandle)>(v, null);
v[v] = v;
goto label;
label:
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: boolean getNeutralContextClassLoader()>();
staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.Object invoke(java.lang.Object,java.lang.reflect.Method,java.lang.Object[],boolean)>(v, v, v, v);
label:
goto label;
label:
v := @caughtexception;
throw v;
label:
v := @caughtexception;
v = new org.glassfish.hk.api.MultiException;
specialinvoke v.<org.glassfish.hk.api.MultiException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
return;
catch org.glassfish.hk.api.MultiException from label to label with label;
catch java.lang.Throwable from label to label with label;
catch org.glassfish.hk.api.MultiException from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public static java.lang.Object justCreate(java.lang.Class, org.jvnet.hk.internal.ServiceLocatorImpl, java.lang.String)
{
java.lang.Throwable v;
java.lang.Object[] v;
java.lang.reflect.Constructor v;
org.jvnet.hk.internal.PerLocatorUtilities v;
int v, v;
java.lang.String v;
org.jvnet.hk.internal.Collector v;
boolean v, v;
java.util.Iterator v;
org.glassfish.hk.api.ClassAnalyzer v;
org.glassfish.hk.api.InjectionResolver v;
java.lang.IllegalArgumentException v;
java.util.List v;
org.glassfish.hk.api.MultiException v;
org.jvnet.hk.internal.ServiceLocatorImpl v;
java.lang.Class v;
java.lang.Object v, v, v;
v := @parameter: java.lang.Class;
v := @parameter: org.jvnet.hk.internal.ServiceLocatorImpl;
v := @parameter: java.lang.String;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>()>();
throw v;
label:
v = new org.jvnet.hk.internal.Collector;
specialinvoke v.<org.jvnet.hk.internal.Collector: void <init>()>();
v = staticinvoke <org.jvnet.hk.internal.Utilities: org.glassfish.hk.api.ClassAnalyzer getClassAnalyzer(org.jvnet.hk.internal.ServiceLocatorImpl,java.lang.String,org.jvnet.hk.internal.Collector)>(v, v, v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void throwIfErrors()>();
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.lang.reflect.Constructor getConstructor(java.lang.Class,org.glassfish.hk.api.ClassAnalyzer,org.jvnet.hk.internal.Collector)>(v, v, v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void throwIfErrors()>();
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.util.List getConstructorInjectees(java.lang.reflect.Constructor,org.glassfish.hk.api.ActiveDescriptor)>(v, null);
staticinvoke <org.jvnet.hk.internal.Utilities: void validateSelfInjectees(org.glassfish.hk.api.ActiveDescriptor,java.util.List,org.jvnet.hk.internal.Collector)>(null, v, v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void throwIfErrors()>();
v = interfaceinvoke v.<java.util.List: int size()>();
v = newarray (java.lang.Object)[v];
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: org.jvnet.hk.internal.PerLocatorUtilities getPerLocatorUtilities()>();
v = virtualinvoke v.<org.jvnet.hk.internal.PerLocatorUtilities: org.glassfish.hk.api.InjectionResolver getInjectionResolver(org.jvnet.hk.internal.ServiceLocatorImpl,org.glassfish.hk.api.Injectee)>(v, v);
v = virtualinvoke v.<org.jvnet.hk.internal.SystemInjecteeImpl: int getPosition()>();
v = interfaceinvoke v.<org.glassfish.hk.api.InjectionResolver: java.lang.Object resolve(org.glassfish.hk.api.Injectee,org.glassfish.hk.api.ServiceHandle)>(v, null);
v[v] = v;
goto label;
label:
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: boolean getNeutralContextClassLoader()>();
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.Object makeMe(java.lang.reflect.Constructor,java.lang.Object[],boolean)>(v, v, v);
label:
return v;
label:
v := @caughtexception;
v = new org.glassfish.hk.api.MultiException;
specialinvoke v.<org.glassfish.hk.api.MultiException: void <init>(java.lang.Throwable)>(v);
throw v;
catch java.lang.Throwable from label to label with label;
}
public static java.lang.Class[] getInterfacesForProxy(java.util.Set)
{
java.lang.Object[] v;
java.util.Iterator v;
java.lang.Class[] v;
java.util.Set v;
int v;
java.lang.Class v;
java.lang.Object v;
java.util.LinkedList v;
boolean v, v;
v := @parameter: java.util.Set;
v = new java.util.LinkedList;
specialinvoke v.<java.util.LinkedList: void <init>()>();
virtualinvoke v.<java.util.LinkedList: boolean add(java.lang.Object)>(class "Lorg/glassfish/hk2/api/ProxyCtl;");
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.Class getRawClass(java.lang.reflect.Type)>(v);
if v == null goto label;
v = virtualinvoke v.<java.lang.Class: boolean isInterface()>();
if v == 0 goto label;
virtualinvoke v.<java.util.LinkedList: boolean add(java.lang.Object)>(v);
goto label;
label:
v = virtualinvoke v.<java.util.LinkedList: int size()>();
v = newarray (java.lang.Class)[v];
v = virtualinvoke v.<java.util.LinkedList: java.lang.Object[] toArray(java.lang.Object[])>(v);
return v;
}
public static boolean isProxiableScope(java.lang.Class)
{
java.lang.Class v;
boolean v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: boolean isAnnotationPresent(java.lang.Class)>(class "Lorg/glassfish/hk2/api/Proxiable;");
return v;
}
public static boolean isUnproxiableScope(java.lang.Class)
{
java.lang.Class v;
boolean v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: boolean isAnnotationPresent(java.lang.Class)>(class "Lorg/glassfish/hk2/api/Unproxiable;");
if v == 0 goto label;
return 1;
label:
return 0;
}
private static boolean isProxiable(org.glassfish.hk.api.ActiveDescriptor, org.glassfish.hk.api.Injectee)
{
org.glassfish.hk.api.ActiveDescriptor v, v, v;
java.lang.Boolean v, v, v;
java.lang.String v, v, v, v;
boolean v, v, v, v, v, v, v, v;
org.glassfish.hk.api.Injectee v;
java.lang.'annotation'.Annotation v;
java.lang.Class v;
v := @parameter: org.glassfish.hk.api.ActiveDescriptor;
v := @parameter: org.glassfish.hk.api.Injectee;
v = interfaceinvoke v.<org.glassfish.hk.api.ActiveDescriptor: java.lang.Boolean isProxiable()>();
if v == null goto label;
if v != null goto label;
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
return v;
label:
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
if v != 0 goto label;
return 0;
label:
v = interfaceinvoke v.<org.glassfish.hk.api.Injectee: org.glassfish.hk.api.ActiveDescriptor getInjecteeDescriptor()>();
if v != null goto label;
return 1;
label:
v = interfaceinvoke v.<org.glassfish.hk.api.ActiveDescriptor: java.lang.Boolean isProxyForSameScope()>();
if v == null goto label;
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
if v == 0 goto label;
label:
return 1;
label:
v = interfaceinvoke v.<org.glassfish.hk.api.ActiveDescriptor: java.lang.String getScope()>();
v = interfaceinvoke v.<org.glassfish.hk.api.ActiveDescriptor: java.lang.String getScope()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
return 0;
label:
return 1;
label:
v = interfaceinvoke v.<org.glassfish.hk.api.ActiveDescriptor: java.lang.Class getScopeAnnotation()>();
v = virtualinvoke v.<java.lang.Class: boolean isAnnotationPresent(java.lang.Class)>(class "Lorg/glassfish/hk2/api/Proxiable;");
if v != 0 goto label;
return 0;
label:
if v != null goto label;
return 1;
label:
v = interfaceinvoke v.<org.glassfish.hk.api.Injectee: org.glassfish.hk.api.ActiveDescriptor getInjecteeDescriptor()>();
if v != null goto label;
return 1;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lorg/glassfish/hk2/api/Proxiable;");
v = interfaceinvoke v.<org.glassfish.hk.api.ActiveDescriptor: java.lang.Boolean isProxyForSameScope()>();
if v == null goto label;
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
if v == 0 goto label;
return 1;
label:
if v == null goto label;
v = interfaceinvoke v.<org.glassfish.hk.api.Proxiable: boolean proxyForSameScope()>();
if v == 0 goto label;
label:
return 1;
label:
v = interfaceinvoke v.<org.glassfish.hk.api.ActiveDescriptor: java.lang.String getScope()>();
v = interfaceinvoke v.<org.glassfish.hk.api.ActiveDescriptor: java.lang.String getScope()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
return 0;
label:
return 1;
}
public static java.lang.Object getFirstThingInList(java.util.List)
{
java.util.List v;
java.util.Iterator v;
java.lang.Object v;
boolean v;
v := @parameter: java.util.List;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
return v;
label:
return null;
}
public static org.glassfish.hk.api.ActiveDescriptor getLocatorDescriptor(org.glassfish.hk.api.ServiceLocator)
{
java.util.HashSet v;
org.glassfish.hk.api.DescriptorVisibility v;
org.jvnet.hk.internal.ConstantActiveDescriptor v;
java.util.Set v;
long v;
org.glassfish.hk.api.ServiceLocator v;
v := @parameter: org.glassfish.hk.api.ServiceLocator;
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
virtualinvoke v.<java.util.HashSet: boolean add(java.lang.Object)>(class "Lorg/glassfish/hk2/api/ServiceLocator;");
v = staticinvoke <java.util.Collections: java.util.Set emptySet()>();
v = new org.jvnet.hk.internal.ConstantActiveDescriptor;
v = <org.glassfish.hk.api.DescriptorVisibility: org.glassfish.hk.api.DescriptorVisibility LOCAL>;
v = interfaceinvoke v.<org.glassfish.hk.api.ServiceLocator: long getLocatorId()>();
specialinvoke v.<org.jvnet.hk.internal.ConstantActiveDescriptor: void <init>(java.lang.Object,java.util.Set,java.lang.Class,java.lang.String,java.util.Set,org.glassfish.hk.api.DescriptorVisibility,int,java.lang.Boolean,java.lang.Boolean,java.lang.String,long,java.util.Map)>(v, v, class "Lorg/glassfish/hk2/api/PerLookup;", null, v, v, 0, null, null, null, v, null);
return v;
}
public static org.glassfish.hk.api.ActiveDescriptor getThreeThirtyDescriptor(org.jvnet.hk.internal.ServiceLocatorImpl)
{
org.glassfish.hk.utilities.NamedImpl v;
org.glassfish.hk.api.DescriptorVisibility v;
org.jvnet.hk.internal.ConstantActiveDescriptor v;
long v;
org.jvnet.hk.internal.ThreeThirtyResolver v;
java.util.HashSet v, v;
org.glassfish.hk.utilities.reflection.ParameterizedTypeImpl v;
org.jvnet.hk.internal.ServiceLocatorImpl v;
java.lang.reflect.Type[] v;
v := @parameter: org.jvnet.hk.internal.ServiceLocatorImpl;
v = new org.jvnet.hk.internal.ThreeThirtyResolver;
specialinvoke v.<org.jvnet.hk.internal.ThreeThirtyResolver: void <init>(org.jvnet.hk.internal.ServiceLocatorImpl)>(v);
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
v = newarray (java.lang.reflect.Type)[1];
v[0] = class "Ljakarta/inject/Inject;";
v = new org.glassfish.hk.utilities.reflection.ParameterizedTypeImpl;
specialinvoke v.<org.glassfish.hk.utilities.reflection.ParameterizedTypeImpl: void <init>(java.lang.reflect.Type,java.lang.reflect.Type[])>(class "Lorg/glassfish/hk2/api/InjectionResolver;", v);
virtualinvoke v.<java.util.HashSet: boolean add(java.lang.Object)>(v);
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
v = new org.glassfish.hk.utilities.NamedImpl;
specialinvoke v.<org.glassfish.hk.utilities.NamedImpl: void <init>(java.lang.String)>("SystemInjectResolver");
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
v = new org.jvnet.hk.internal.ConstantActiveDescriptor;
v = <org.glassfish.hk.api.DescriptorVisibility: org.glassfish.hk.api.DescriptorVisibility LOCAL>;
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: long getLocatorId()>();
specialinvoke v.<org.jvnet.hk.internal.ConstantActiveDescriptor: void <init>(java.lang.Object,java.util.Set,java.lang.Class,java.lang.String,java.util.Set,org.glassfish.hk.api.DescriptorVisibility,int,java.lang.Boolean,java.lang.Boolean,java.lang.String,long,java.util.Map)>(v, v, class "Ljakarta/inject/Singleton;", "SystemInjectResolver", v, v, 0, null, null, null, v, null);
return v;
}
public static java.lang.reflect.Constructor findProducerConstructor(java.lang.Class, org.jvnet.hk.internal.ServiceLocatorImpl, org.jvnet.hk.internal.Collector)
{
java.lang.NoSuchMethodException v;
java.lang.reflect.Constructor v, v;
int v;
java.lang.String v, v, v, v, v, v;
org.jvnet.hk.internal.Collector v;
boolean v, v, v;
java.util.Iterator v;
java.util.Set v;
java.lang.IllegalArgumentException v, v;
org.jvnet.hk.internal.ServiceLocatorImpl v;
java.lang.reflect.Type[] v;
java.lang.Class v;
java.lang.Object v;
v := @parameter: java.lang.Class;
v := @parameter: org.jvnet.hk.internal.ServiceLocatorImpl;
v := @parameter: org.jvnet.hk.internal.Collector;
v = null;
v = null;
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.util.Set getAllConstructors(java.lang.Class)>(v);
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<java.lang.reflect.Constructor: java.lang.reflect.Type[] getGenericParameterTypes()>();
v = lengthof v;
if v > 0 goto label;
v = v;
label:
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: boolean hasInjectAnnotation(java.lang.reflect.AnnotatedElement)>(v);
if v == 0 goto label;
if v == null goto label;
v = new java.lang.IllegalArgumentException;
v = staticinvoke <org.glassfish.hk.utilities.reflection.Pretty: java.lang.String clazz(java.lang.Class)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("There is more than one constructor on class \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
return null;
label:
v = v;
label:
v = staticinvoke <org.jvnet.hk.internal.Utilities: boolean isProperConstructor(java.lang.reflect.Constructor)>(v);
if v != 0 goto label;
v = new java.lang.IllegalArgumentException;
v = staticinvoke <org.glassfish.hk.utilities.reflection.Pretty: java.lang.String clazz(java.lang.Class)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("The constructor for \u may not have an annotation as a parameter");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
return null;
label:
if v == null goto label;
return v;
label:
if v != null goto label;
v = new java.lang.NoSuchMethodException;
v = staticinvoke <org.glassfish.hk.utilities.reflection.Pretty: java.lang.String clazz(java.lang.Class)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("The class \u has no constructor marked @Inject and no zero argument constructor");
specialinvoke v.<java.lang.NoSuchMethodException: void <init>(java.lang.String)>(v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
return null;
label:
return v;
}
private static boolean isProperConstructor(java.lang.reflect.Constructor)
{
int v, v;
java.lang.Class[] v;
java.lang.Class v;
java.lang.reflect.Constructor v;
boolean v;
v := @parameter: java.lang.reflect.Constructor;
v = virtualinvoke v.<java.lang.reflect.Constructor: java.lang.Class[] getParameterTypes()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<java.lang.Class: boolean isAnnotation()>();
if v == 0 goto label;
return 0;
label:
v = v + 1;
goto label;
label:
return 1;
}
private static java.util.Set getAllConstructors(java.lang.Class)
{
int v, v;
java.lang.Class v;
java.lang.Object v;
java.lang.reflect.Constructor v;
java.util.LinkedHashSet v;
org.jvnet.hk.internal.Utilities$3 v;
v := @parameter: java.lang.Class;
v = new java.util.LinkedHashSet;
specialinvoke v.<java.util.LinkedHashSet: void <init>()>();
v = new org.jvnet.hk.internal.Utilities$3;
specialinvoke v.<org.jvnet.hk.internal.Utilities$3: void <init>(java.lang.Class)>(v);
v = staticinvoke <java.security.AccessController: java.lang.Object doPrivileged(java.security.PrivilegedAction)>(v);
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
virtualinvoke v.<java.util.HashSet: boolean add(java.lang.Object)>(v);
v = v + 1;
goto label;
label:
return v;
}
private static boolean hasSubscribeToAnnotation(java.lang.reflect.Method)
{
java.lang.'annotation'.Annotation[][] v;
java.lang.'annotation'.Annotation[] v;
int v, v, v, v;
java.lang.'annotation'.Annotation v;
java.lang.Class v, v;
java.lang.reflect.Method v;
boolean v;
v := @parameter: java.lang.reflect.Method;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.'annotation'.Annotation[][] getParameterAnnotations()>();
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = class "Lorg/glassfish/hk2/api/messaging/SubscribeTo;";
v = v[v];
v = interfaceinvoke v.<java.lang.'annotation'.Annotation: java.lang.Class annotationType()>();
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
return 1;
label:
v = v + 1;
goto label;
label:
v = v + 1;
goto label;
label:
return 0;
}
public static java.util.Set findInitializerMethods(java.lang.Class, org.jvnet.hk.internal.ServiceLocatorImpl, org.jvnet.hk.internal.Collector)
{
org.glassfish.hk.utilities.reflection.ClassReflectionHelper v;
int v;
java.lang.String v, v;
org.jvnet.hk.internal.Collector v;
java.lang.reflect.Method v;
java.util.LinkedHashSet v;
boolean v, v, v, v, v, v, v;
java.util.Iterator v;
java.util.Set v;
java.lang.IllegalArgumentException v;
org.jvnet.hk.internal.ServiceLocatorImpl v;
java.lang.Class v;
java.lang.Object v;
v := @parameter: java.lang.Class;
v := @parameter: org.jvnet.hk.internal.ServiceLocatorImpl;
v := @parameter: org.jvnet.hk.internal.Collector;
v = new java.util.LinkedHashSet;
specialinvoke v.<java.util.LinkedHashSet: void <init>()>();
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: org.glassfish.hk.utilities.reflection.ClassReflectionHelper getClassReflectionHelper()>();
v = interfaceinvoke v.<org.glassfish.hk.utilities.reflection.ClassReflectionHelper: java.util.Set getAllMethods(java.lang.Class)>(v);
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.glassfish.hk.utilities.reflection.MethodWrapper: java.lang.reflect.Method getMethod()>();
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: boolean hasInjectAnnotation(java.lang.reflect.AnnotatedElement)>(v);
if v == 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: boolean isSynthetic()>();
if v != 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: boolean isBridge()>();
if v != 0 goto label;
v = staticinvoke <org.jvnet.hk.internal.Utilities: boolean hasSubscribeToAnnotation(java.lang.reflect.Method)>(v);
if v != 0 goto label;
v = staticinvoke <org.jvnet.hk.internal.Utilities: boolean isProperMethod(java.lang.reflect.Method)>(v);
if v != 0 goto label;
v = new java.lang.IllegalArgumentException;
v = staticinvoke <org.glassfish.hk.utilities.reflection.Pretty: java.lang.String method(java.lang.reflect.Method)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("An initializer method \u is static, abstract or has a parameter that is an annotation");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
goto label;
label:
v = virtualinvoke v.<java.lang.reflect.Method: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isStatic(int)>(v);
if v != 0 goto label;
virtualinvoke v.<java.util.LinkedHashSet: boolean add(java.lang.Object)>(v);
goto label;
label:
return v;
}
public static java.lang.reflect.Method findPostConstruct(java.lang.Class, org.jvnet.hk.internal.ServiceLocatorImpl, org.jvnet.hk.internal.Collector)
{
org.jvnet.hk.internal.ServiceLocatorImpl v;
java.lang.Class v;
java.lang.IllegalArgumentException v;
org.jvnet.hk.internal.Collector v;
java.lang.reflect.Method v;
org.glassfish.hk.utilities.reflection.ClassReflectionHelper v;
v := @parameter: java.lang.Class;
v := @parameter: org.jvnet.hk.internal.ServiceLocatorImpl;
v := @parameter: org.jvnet.hk.internal.Collector;
label:
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: org.glassfish.hk.utilities.reflection.ClassReflectionHelper getClassReflectionHelper()>();
v = interfaceinvoke v.<org.glassfish.hk.utilities.reflection.ClassReflectionHelper: java.lang.reflect.Method findPostConstruct(java.lang.Class,java.lang.Class)>(v, class "Lorg/glassfish/hk2/api/PostConstruct;");
label:
return v;
label:
v := @caughtexception;
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
return null;
catch java.lang.IllegalArgumentException from label to label with label;
}
public static java.lang.reflect.Method findPreDestroy(java.lang.Class, org.jvnet.hk.internal.ServiceLocatorImpl, org.jvnet.hk.internal.Collector)
{
org.jvnet.hk.internal.ServiceLocatorImpl v;
java.lang.Class v;
java.lang.IllegalArgumentException v;
org.jvnet.hk.internal.Collector v;
java.lang.reflect.Method v;
org.glassfish.hk.utilities.reflection.ClassReflectionHelper v;
v := @parameter: java.lang.Class;
v := @parameter: org.jvnet.hk.internal.ServiceLocatorImpl;
v := @parameter: org.jvnet.hk.internal.Collector;
label:
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: org.glassfish.hk.utilities.reflection.ClassReflectionHelper getClassReflectionHelper()>();
v = interfaceinvoke v.<org.glassfish.hk.utilities.reflection.ClassReflectionHelper: java.lang.reflect.Method findPreDestroy(java.lang.Class,java.lang.Class)>(v, class "Lorg/glassfish/hk2/api/PreDestroy;");
label:
return v;
label:
v := @caughtexception;
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
return null;
catch java.lang.IllegalArgumentException from label to label with label;
}
public static java.util.Set findInitializerFields(java.lang.Class, org.jvnet.hk.internal.ServiceLocatorImpl, org.jvnet.hk.internal.Collector)
{
org.glassfish.hk.utilities.reflection.ClassReflectionHelper v;
int v;
java.lang.String v, v;
org.jvnet.hk.internal.Collector v;
java.util.LinkedHashSet v;
boolean v, v, v, v;
java.util.Iterator v;
java.util.Set v;
java.lang.IllegalArgumentException v;
org.jvnet.hk.internal.ServiceLocatorImpl v;
java.lang.Class v;
java.lang.Object v;
v := @parameter: java.lang.Class;
v := @parameter: org.jvnet.hk.internal.ServiceLocatorImpl;
v := @parameter: org.jvnet.hk.internal.Collector;
v = new java.util.LinkedHashSet;
specialinvoke v.<java.util.LinkedHashSet: void <init>()>();
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: org.glassfish.hk.utilities.reflection.ClassReflectionHelper getClassReflectionHelper()>();
v = interfaceinvoke v.<org.glassfish.hk.utilities.reflection.ClassReflectionHelper: java.util.Set getAllFields(java.lang.Class)>(v);
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: boolean hasInjectAnnotation(java.lang.reflect.AnnotatedElement)>(v);
if v == 0 goto label;
v = staticinvoke <org.jvnet.hk.internal.Utilities: boolean isProperField(java.lang.reflect.Field)>(v);
if v != 0 goto label;
v = new java.lang.IllegalArgumentException;
v = staticinvoke <org.glassfish.hk.utilities.reflection.Pretty: java.lang.String field(java.lang.reflect.Field)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("The field \u may not be static, final or have an Annotation type");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
goto label;
label:
v = virtualinvoke v.<java.lang.reflect.Field: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isStatic(int)>(v);
if v != 0 goto label;
virtualinvoke v.<java.util.LinkedHashSet: boolean add(java.lang.Object)>(v);
goto label;
label:
return v;
}
static org.jvnet.hk.internal.AnnotatedElementAnnotationInfo computeAEAI(java.lang.reflect.AnnotatedElement)
{
java.lang.'annotation'.Annotation[][] v, v, v;
java.lang.'annotation'.Annotation[] v, v, v;
org.jvnet.hk.internal.AnnotatedElementAnnotationInfo v, v, v;
boolean v, v;
java.lang.reflect.AnnotatedElement v;
v := @parameter: java.lang.reflect.AnnotatedElement;
v = v instanceof java.lang.reflect.Method;
if v == 0 goto label;
v = new org.jvnet.hk.internal.AnnotatedElementAnnotationInfo;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.'annotation'.Annotation[] getAnnotations()>();
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.'annotation'.Annotation[][] getParameterAnnotations()>();
specialinvoke v.<org.jvnet.hk.internal.AnnotatedElementAnnotationInfo: void <init>(java.lang.'annotation'.Annotation[],boolean,java.lang.'annotation'.Annotation[][],boolean)>(v, 1, v, 0);
return v;
label:
v = v instanceof java.lang.reflect.Constructor;
if v == 0 goto label;
v = new org.jvnet.hk.internal.AnnotatedElementAnnotationInfo;
v = virtualinvoke v.<java.lang.reflect.Constructor: java.lang.'annotation'.Annotation[] getAnnotations()>();
v = virtualinvoke v.<java.lang.reflect.Constructor: java.lang.'annotation'.Annotation[][] getParameterAnnotations()>();
specialinvoke v.<org.jvnet.hk.internal.AnnotatedElementAnnotationInfo: void <init>(java.lang.'annotation'.Annotation[],boolean,java.lang.'annotation'.Annotation[][],boolean)>(v, 1, v, 1);
return v;
label:
v = new org.jvnet.hk.internal.AnnotatedElementAnnotationInfo;
v = interfaceinvoke v.<java.lang.reflect.AnnotatedElement: java.lang.'annotation'.Annotation[] getAnnotations()>();
v = newarray (java.lang.'annotation'.Annotation[])[0];
specialinvoke v.<org.jvnet.hk.internal.AnnotatedElementAnnotationInfo: void <init>(java.lang.'annotation'.Annotation[],boolean,java.lang.'annotation'.Annotation[][],boolean)>(v, 0, v, 0);
return v;
}
private static boolean isProperMethod(java.lang.reflect.Method)
{
int v, v;
java.lang.Class[] v;
java.lang.Class v;
java.lang.reflect.Method v;
boolean v, v;
v := @parameter: java.lang.reflect.Method;
v = staticinvoke <org.jvnet.hk.internal.Utilities: boolean isAbstract(java.lang.reflect.Member)>(v);
if v == 0 goto label;
return 0;
label:
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class[] getParameterTypes()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<java.lang.Class: boolean isAnnotation()>();
if v == 0 goto label;
return 0;
label:
v = v + 1;
goto label;
label:
return 1;
}
private static boolean isProperField(java.lang.reflect.Field)
{
java.lang.Class v;
java.lang.reflect.Field v;
boolean v, v, v;
v := @parameter: java.lang.reflect.Field;
v = staticinvoke <org.jvnet.hk.internal.Utilities: boolean isFinal(java.lang.reflect.Member)>(v);
if v == 0 goto label;
return 0;
label:
v = virtualinvoke v.<java.lang.reflect.Field: java.lang.Class getType()>();
v = virtualinvoke v.<java.lang.Class: boolean isAnnotation()>();
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static boolean isAbstract(java.lang.reflect.Member)
{
java.lang.reflect.Member v;
int v, v;
boolean v;
v := @parameter: java.lang.reflect.Member;
v = interfaceinvoke v.<java.lang.reflect.Member: int getModifiers()>();
v = v & 1024;
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static boolean isFinal(java.lang.reflect.Member)
{
java.lang.reflect.Member v;
int v, v;
boolean v;
v := @parameter: java.lang.reflect.Member;
v = interfaceinvoke v.<java.lang.reflect.Member: int getModifiers()>();
v = v & 16;
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
private static boolean isFinal(java.lang.Class)
{
int v, v;
java.lang.Class v;
boolean v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: int getModifiers()>();
v = v & 16;
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
private static org.glassfish.hk.utilities.reflection.ScopeInfo getScopeInfo(java.lang.reflect.AnnotatedElement, org.glassfish.hk.api.Descriptor, org.jvnet.hk.internal.Collector)
{
org.glassfish.hk.utilities.reflection.ScopeInfo v, v, v, v;
org.glassfish.hk.api.PerLookup v;
java.lang.String v, v;
org.jvnet.hk.internal.Collector v;
boolean v, v, v, v, v;
org.glassfish.hk.api.Descriptor v;
jakarta.inject.Singleton v;
java.lang.'annotation'.Annotation v, v;
java.lang.Class v, v, v, v, v, v;
java.lang.reflect.AnnotatedElement v, v;
v := @parameter: java.lang.reflect.AnnotatedElement;
v := @parameter: org.glassfish.hk.api.Descriptor;
v := @parameter: org.jvnet.hk.internal.Collector;
v = v;
v = null;
label:
if v == null goto label;
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.lang.'annotation'.Annotation internalGetScopeAnnotationType(java.lang.reflect.AnnotatedElement,org.jvnet.hk.internal.Collector)>(v, v);
if v == null goto label;
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = v;
goto label;
label:
v = interfaceinvoke v.<java.lang.'annotation'.Annotation: java.lang.Class annotationType()>();
v = virtualinvoke v.<java.lang.Class: boolean isAnnotationPresent(java.lang.Class)>(class "Ljava/lang/annotation/Inherited;");
if v == 0 goto label;
v = v;
goto label;
label:
v = v instanceof java.lang.Class;
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Class: java.lang.Class getSuperclass()>();
goto label;
label:
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getDeclaringClass()>();
v = null;
v = virtualinvoke v.<java.lang.Class: java.lang.Class getSuperclass()>();
label:
if v == null goto label;
v = class "Lorg/glassfish/hk2/api/Factory;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.lang.reflect.Method getFactoryProvideMethod(java.lang.Class)>(v);
goto label;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.Class getSuperclass()>();
goto label;
label:
if v == null goto label;
v = new org.glassfish.hk.utilities.reflection.ScopeInfo;
v = interfaceinvoke v.<java.lang.'annotation'.Annotation: java.lang.Class annotationType()>();
specialinvoke v.<org.glassfish.hk.utilities.reflection.ScopeInfo: void <init>(java.lang.'annotation'.Annotation,java.lang.Class)>(v, v);
return v;
label:
v = interfaceinvoke v.<java.lang.reflect.AnnotatedElement: boolean isAnnotationPresent(java.lang.Class)>(class "Lorg/jvnet/hk2/annotations/Service;");
if v == 0 goto label;
v = new org.glassfish.hk.utilities.reflection.ScopeInfo;
v = staticinvoke <org.glassfish.hk.utilities.ServiceLocatorUtilities: jakarta.inject.Singleton getSingletonAnnotation()>();
specialinvoke v.<org.glassfish.hk.utilities.reflection.ScopeInfo: void <init>(java.lang.'annotation'.Annotation,java.lang.Class)>(v, class "Ljakarta/inject/Singleton;");
return v;
label:
if v == null goto label;
v = interfaceinvoke v.<org.glassfish.hk.api.Descriptor: java.lang.String getScope()>();
if v == null goto label;
v = interfaceinvoke v.<org.glassfish.hk.api.Descriptor: java.lang.String getScope()>();
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.lang.Class loadClass(java.lang.String,org.glassfish.hk.api.Descriptor,org.jvnet.hk.internal.Collector)>(v, v, v);
if v == null goto label;
v = new org.glassfish.hk.utilities.reflection.ScopeInfo;
specialinvoke v.<org.glassfish.hk.utilities.reflection.ScopeInfo: void <init>(java.lang.'annotation'.Annotation,java.lang.Class)>(null, v);
return v;
label:
v = new org.glassfish.hk.utilities.reflection.ScopeInfo;
v = staticinvoke <org.glassfish.hk.utilities.ServiceLocatorUtilities: org.glassfish.hk.api.PerLookup getPerLookupAnnotation()>();
specialinvoke v.<org.glassfish.hk.utilities.reflection.ScopeInfo: void <init>(java.lang.'annotation'.Annotation,java.lang.Class)>(v, class "Lorg/glassfish/hk2/api/PerLookup;");
return v;
}
public static java.lang.Class getScopeAnnotationType(java.lang.Class, org.glassfish.hk.api.Descriptor)
{
java.lang.Class v, v;
org.glassfish.hk.utilities.reflection.ScopeInfo v;
org.jvnet.hk.internal.Collector v;
org.glassfish.hk.api.Descriptor v;
v := @parameter: java.lang.Class;
v := @parameter: org.glassfish.hk.api.Descriptor;
v = new org.jvnet.hk.internal.Collector;
specialinvoke v.<org.jvnet.hk.internal.Collector: void <init>()>();
v = staticinvoke <org.jvnet.hk.internal.Utilities: org.glassfish.hk.utilities.reflection.ScopeInfo getScopeInfo(java.lang.reflect.AnnotatedElement,org.glassfish.hk.api.Descriptor,org.jvnet.hk.internal.Collector)>(v, v, v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void throwIfErrors()>();
v = virtualinvoke v.<org.glassfish.hk.utilities.reflection.ScopeInfo: java.lang.Class getAnnoType()>();
return v;
}
public static org.glassfish.hk.utilities.reflection.ScopeInfo getScopeAnnotationType(java.lang.reflect.AnnotatedElement, org.glassfish.hk.api.Descriptor, org.jvnet.hk.internal.Collector)
{
org.glassfish.hk.utilities.reflection.ScopeInfo v;
org.jvnet.hk.internal.Collector v;
java.lang.reflect.AnnotatedElement v;
org.glassfish.hk.api.Descriptor v;
v := @parameter: java.lang.reflect.AnnotatedElement;
v := @parameter: org.glassfish.hk.api.Descriptor;
v := @parameter: org.jvnet.hk.internal.Collector;
v = staticinvoke <org.jvnet.hk.internal.Utilities: org.glassfish.hk.utilities.reflection.ScopeInfo getScopeInfo(java.lang.reflect.AnnotatedElement,org.glassfish.hk.api.Descriptor,org.jvnet.hk.internal.Collector)>(v, v, v);
return v;
}
private static java.lang.'annotation'.Annotation internalGetScopeAnnotationType(java.lang.reflect.AnnotatedElement, org.jvnet.hk.internal.Collector)
{
java.lang.'annotation'.Annotation[] v;
int v, v;
java.lang.String v, v, v;
org.jvnet.hk.internal.Collector v;
boolean v, v;
java.lang.IllegalArgumentException v;
java.lang.'annotation'.Annotation v, v;
java.lang.Class v, v, v;
java.lang.reflect.AnnotatedElement v;
v := @parameter: java.lang.reflect.AnnotatedElement;
v := @parameter: org.jvnet.hk.internal.Collector;
v = 0;
v = null;
v = interfaceinvoke v.<java.lang.reflect.AnnotatedElement: java.lang.'annotation'.Annotation[] getDeclaredAnnotations()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = interfaceinvoke v.<java.lang.'annotation'.Annotation: java.lang.Class annotationType()>();
v = virtualinvoke v.<java.lang.Class: boolean isAnnotationPresent(java.lang.Class)>(class "Ljakarta/inject/Scope;");
if v == 0 goto label;
if v == null goto label;
v = new java.lang.IllegalArgumentException;
v = interfaceinvoke v.<java.lang.'annotation'.Annotation: java.lang.Class annotationType()>();
v = staticinvoke <org.glassfish.hk.utilities.reflection.Pretty: java.lang.String clazz(java.lang.Class)>(v);
v = interfaceinvoke v.<java.lang.'annotation'.Annotation: java.lang.Class annotationType()>();
v = staticinvoke <org.glassfish.hk.utilities.reflection.Pretty: java.lang.String clazz(java.lang.Class)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.reflect.AnnotatedElement,java.lang.String,java.lang.String)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("The type \u may not have more than one scope.  It has at least \u and \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
v = 1;
goto label;
label:
v = v;
label:
v = v + 1;
goto label;
label:
if v == 0 goto label;
return null;
label:
return v;
}
public static java.lang.reflect.Method getFactoryProvideMethod(java.lang.Class)
{
java.lang.NoSuchMethodException v;
java.lang.Class[] v;
java.lang.Class v;
java.lang.reflect.Method v;
v := @parameter: java.lang.Class;
label:
v = newarray (java.lang.Class)[0];
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Method getMethod(java.lang.String,java.lang.Class[])>("provide", v);
label:
return v;
label:
v := @caughtexception;
return null;
catch java.lang.NoSuchMethodException from label to label with label;
}
public static java.lang.String getDefaultNameFromMethod(java.lang.reflect.Method, org.jvnet.hk.internal.Collector)
{
java.lang.IllegalArgumentException v;
java.lang.'annotation'.Annotation v;
java.lang.String v, v, v;
org.jvnet.hk.internal.Collector v;
java.lang.reflect.Method v;
boolean v;
v := @parameter: java.lang.reflect.Method;
v := @parameter: org.jvnet.hk.internal.Collector;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Ljakarta/inject/Named;");
if v != null goto label;
return null;
label:
v = interfaceinvoke v.<jakarta.inject.Named: java.lang.String value()>();
if v == null goto label;
v = interfaceinvoke v.<jakarta.inject.Named: java.lang.String value()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("");
if v == 0 goto label;
label:
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("@Named on the provide method of a factory must have an explicit value");
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
label:
v = interfaceinvoke v.<jakarta.inject.Named: java.lang.String value()>();
return v;
}
public static java.util.Set getAllQualifiers(java.lang.reflect.AnnotatedElement, java.lang.String, org.jvnet.hk.internal.Collector)
{
java.lang.String v, v, v, v, v, v, v;
org.jvnet.hk.internal.Collector v;
boolean v, v, v, v;
java.util.Iterator v;
org.glassfish.hk.utilities.NamedImpl v;
java.util.Set v;
java.lang.IllegalArgumentException v, v;
java.lang.Object v;
java.lang.reflect.AnnotatedElement v;
v := @parameter: java.lang.reflect.AnnotatedElement;
v := @parameter: java.lang.String;
v := @parameter: org.jvnet.hk.internal.Collector;
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.util.Set getQualifierAnnotations(java.lang.reflect.AnnotatedElement)>(v);
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v instanceof jakarta.inject.Named;
if v == 0 goto label;
label:
if v != null goto label;
if v == null goto label;
v = new java.lang.IllegalArgumentException;
v = interfaceinvoke v.<jakarta.inject.Named: java.lang.String value()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.reflect.AnnotatedElement,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("No name was in the descriptor, but this element(\u has a Named annotation with value: \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
interfaceinvoke v.<java.util.Set: boolean remove(java.lang.Object)>(v);
label:
return v;
label:
if v == null goto label;
v = interfaceinvoke v.<jakarta.inject.Named: java.lang.String value()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("");
if v == 0 goto label;
if v == null goto label;
interfaceinvoke v.<java.util.Set: boolean remove(java.lang.Object)>(v);
label:
v = new org.glassfish.hk.utilities.NamedImpl;
specialinvoke v.<org.glassfish.hk.utilities.NamedImpl: void <init>(java.lang.String)>(v);
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
label:
v = interfaceinvoke v.<jakarta.inject.Named: java.lang.String value()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = new java.lang.IllegalArgumentException;
v = interfaceinvoke v.<jakarta.inject.Named: java.lang.String value()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("The class had an @Named qualifier that was inconsistent.  The expected name is \u but the annotation has name \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
label:
return v;
}
private static org.jvnet.hk.internal.Utilities$AnnotationInformation getParamInformation(java.lang.'annotation'.Annotation[])
{
java.lang.'annotation'.Annotation[] v;
java.util.HashSet v;
int v, v;
boolean v, v, v, v, v, v, v;
java.util.Set v;
org.jvnet.hk.internal.Utilities$AnnotationInformation v, v, v;
java.lang.'annotation'.Annotation v;
java.lang.Class v, v, v, v, v, v;
v := @parameter: java.lang.'annotation'.Annotation[];
v = 1;
v = null;
v = 0;
v = 0;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: boolean isAnnotationAQualifier(java.lang.'annotation'.Annotation)>(v);
if v == 0 goto label;
if v != null goto label;
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
v = v;
label:
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
v = 0;
goto label;
label:
v = class "Lorg/jvnet/hk2/annotations/Optional;";
v = interfaceinvoke v.<java.lang.'annotation'.Annotation: java.lang.Class annotationType()>();
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = 1;
v = 0;
goto label;
label:
v = class "Lorg/glassfish/hk2/api/Self;";
v = interfaceinvoke v.<java.lang.'annotation'.Annotation: java.lang.Class annotationType()>();
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = 1;
v = 0;
goto label;
label:
v = class "Lorg/glassfish/hk2/api/Unqualified;";
v = interfaceinvoke v.<java.lang.'annotation'.Annotation: java.lang.Class annotationType()>();
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = 0;
label:
v = v + 1;
goto label;
label:
if v == 0 goto label;
v = <org.jvnet.hk.internal.Utilities: org.jvnet.hk.internal.Utilities$AnnotationInformation DEFAULT_ANNOTATION_INFORMATION>;
return v;
label:
if v != null goto label;
v = <org.jvnet.hk.internal.Utilities: org.jvnet.hk.internal.Utilities$AnnotationInformation DEFAULT_ANNOTATION_INFORMATION>;
v = v.<org.jvnet.hk.internal.Utilities$AnnotationInformation: java.util.Set qualifiers>;
label:
v = new org.jvnet.hk.internal.Utilities$AnnotationInformation;
specialinvoke v.<org.jvnet.hk.internal.Utilities$AnnotationInformation: void <init>(java.util.Set,boolean,boolean,org.glassfish.hk.api.Unqualified)>(v, v, v, v);
return v;
}
public static java.util.List getConstructorInjectees(java.lang.reflect.Constructor, org.glassfish.hk.api.ActiveDescriptor)
{
java.lang.'annotation'.Annotation[][] v;
java.util.Set v;
org.jvnet.hk.internal.Utilities$AnnotationInformation v;
java.lang.'annotation'.Annotation[] v;
java.lang.reflect.Constructor v;
org.jvnet.hk.internal.SystemInjecteeImpl v;
org.glassfish.hk.api.ActiveDescriptor v;
java.lang.reflect.Type v;
org.glassfish.hk.api.Unqualified v;
int v, v;
java.lang.reflect.Type[] v;
java.util.LinkedList v;
boolean v, v;
v := @parameter: java.lang.reflect.Constructor;
v := @parameter: org.glassfish.hk.api.ActiveDescriptor;
v = virtualinvoke v.<java.lang.reflect.Constructor: java.lang.reflect.Type[] getGenericParameterTypes()>();
v = virtualinvoke v.<java.lang.reflect.Constructor: java.lang.'annotation'.Annotation[][] getParameterAnnotations()>();
v = new java.util.LinkedList;
specialinvoke v.<java.util.LinkedList: void <init>()>();
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
v = staticinvoke <org.jvnet.hk.internal.Utilities: org.jvnet.hk.internal.Utilities$AnnotationInformation getParamInformation(java.lang.'annotation'.Annotation[])>(v);
v = new org.jvnet.hk.internal.SystemInjecteeImpl;
v = v[v];
v = v.<org.jvnet.hk.internal.Utilities$AnnotationInformation: java.util.Set qualifiers>;
v = v.<org.jvnet.hk.internal.Utilities$AnnotationInformation: boolean optional>;
v = v.<org.jvnet.hk.internal.Utilities$AnnotationInformation: boolean self>;
v = v.<org.jvnet.hk.internal.Utilities$AnnotationInformation: org.glassfish.hk.api.Unqualified unqualified>;
specialinvoke v.<org.jvnet.hk.internal.SystemInjecteeImpl: void <init>(java.lang.reflect.Type,java.util.Set,int,java.lang.reflect.AnnotatedElement,boolean,boolean,org.glassfish.hk.api.Unqualified,org.glassfish.hk.api.ActiveDescriptor)>(v, v, v, v, v, v, v, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = v + 1;
goto label;
label:
return v;
}
public static java.util.List getMethodInjectees(java.lang.Class, java.lang.reflect.Method, org.glassfish.hk.api.ActiveDescriptor)
{
java.util.List v;
org.glassfish.hk.api.ActiveDescriptor v;
java.util.Map v;
java.lang.Class v;
java.lang.reflect.Method v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.reflect.Method;
v := @parameter: org.glassfish.hk.api.ActiveDescriptor;
v = staticinvoke <java.util.Collections: java.util.Map emptyMap()>();
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.util.List getMethodInjectees(java.lang.Class,java.lang.reflect.Method,org.glassfish.hk.api.ActiveDescriptor,java.util.Map)>(v, v, v, v);
return v;
}
public static java.util.List getMethodInjectees(java.lang.Class, java.lang.reflect.Method, org.glassfish.hk.api.ActiveDescriptor, java.util.Map)
{
java.lang.'annotation'.Annotation[] v;
java.lang.Integer v;
java.util.ArrayList v;
org.glassfish.hk.api.ActiveDescriptor v;
java.util.Map v;
int v, v;
java.lang.reflect.Method v;
boolean v, v, v;
java.lang.'annotation'.Annotation[][] v;
java.util.Set v;
org.jvnet.hk.internal.Utilities$AnnotationInformation v;
org.jvnet.hk.internal.SystemInjecteeImpl v;
java.lang.reflect.Type v, v;
org.glassfish.hk.api.Unqualified v;
java.lang.reflect.Type[] v;
java.lang.Class v, v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.reflect.Method;
v := @parameter: org.glassfish.hk.api.ActiveDescriptor;
v := @parameter: java.util.Map;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.reflect.Type[] getGenericParameterTypes()>();
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.'annotation'.Annotation[][] getParameterAnnotations()>();
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getDeclaringClass()>();
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v = interfaceinvoke v.<java.util.Map: boolean containsKey(java.lang.Object)>(v);
if v == 0 goto label;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(null);
goto label;
label:
v = v[v];
v = staticinvoke <org.jvnet.hk.internal.Utilities: org.jvnet.hk.internal.Utilities$AnnotationInformation getParamInformation(java.lang.'annotation'.Annotation[])>(v);
v = v[v];
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.reflect.Type resolveMember(java.lang.Class,java.lang.reflect.Type,java.lang.Class)>(v, v, v);
v = new org.jvnet.hk.internal.SystemInjecteeImpl;
v = v.<org.jvnet.hk.internal.Utilities$AnnotationInformation: java.util.Set qualifiers>;
v = v.<org.jvnet.hk.internal.Utilities$AnnotationInformation: boolean optional>;
v = v.<org.jvnet.hk.internal.Utilities$AnnotationInformation: boolean self>;
v = v.<org.jvnet.hk.internal.Utilities$AnnotationInformation: org.glassfish.hk.api.Unqualified unqualified>;
specialinvoke v.<org.jvnet.hk.internal.SystemInjecteeImpl: void <init>(java.lang.reflect.Type,java.util.Set,int,java.lang.reflect.AnnotatedElement,boolean,boolean,org.glassfish.hk.api.Unqualified,org.glassfish.hk.api.ActiveDescriptor)>(v, v, v, v, v, v, v, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
v = v + 1;
goto label;
label:
return v;
}
private static java.util.Set getFieldAdjustedQualifierAnnotations(java.lang.reflect.Field, java.util.Set)
{
java.util.Iterator v;
org.glassfish.hk.utilities.NamedImpl v;
java.util.Set v;
java.lang.reflect.Field v;
java.util.HashSet v;
java.lang.'annotation'.Annotation v;
java.lang.Class v;
java.lang.Object v;
java.lang.String v, v, v, v;
boolean v, v, v;
v := @parameter: java.lang.reflect.Field;
v := @parameter: java.util.Set;
v = virtualinvoke v.<java.lang.reflect.Field: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Ljakarta/inject/Named;");
if v != null goto label;
return v;
label:
v = interfaceinvoke v.<jakarta.inject.Named: java.lang.String value()>();
if v == null goto label;
v = "";
v = interfaceinvoke v.<jakarta.inject.Named: java.lang.String value()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
return v;
label:
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<java.lang.'annotation'.Annotation: java.lang.Class annotationType()>();
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(class "Ljakarta/inject/Named;");
if v == 0 goto label;
v = new org.glassfish.hk.utilities.NamedImpl;
v = virtualinvoke v.<java.lang.reflect.Field: java.lang.String getName()>();
specialinvoke v.<org.glassfish.hk.utilities.NamedImpl: void <init>(java.lang.String)>(v);
virtualinvoke v.<java.util.HashSet: boolean add(java.lang.Object)>(v);
goto label;
label:
virtualinvoke v.<java.util.HashSet: boolean add(java.lang.Object)>(v);
goto label;
label:
return v;
}
public static java.util.List getFieldInjectees(java.lang.Class, java.lang.reflect.Field, org.glassfish.hk.api.ActiveDescriptor)
{
java.util.Set v, v;
org.jvnet.hk.internal.Utilities$AnnotationInformation v;
java.lang.'annotation'.Annotation[] v;
java.lang.reflect.Field v;
org.jvnet.hk.internal.SystemInjecteeImpl v;
org.glassfish.hk.api.ActiveDescriptor v;
java.lang.reflect.Type v;
org.glassfish.hk.api.Unqualified v;
int v;
java.lang.Class v;
java.util.LinkedList v;
boolean v, v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.reflect.Field;
v := @parameter: org.glassfish.hk.api.ActiveDescriptor;
v = new java.util.LinkedList;
specialinvoke v.<java.util.LinkedList: void <init>()>();
v = virtualinvoke v.<java.lang.reflect.Field: java.lang.'annotation'.Annotation[] getAnnotations()>();
v = staticinvoke <org.jvnet.hk.internal.Utilities: org.jvnet.hk.internal.Utilities$AnnotationInformation getParamInformation(java.lang.'annotation'.Annotation[])>(v);
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.reflect.Type resolveField(java.lang.Class,java.lang.reflect.Field)>(v, v);
v = new org.jvnet.hk.internal.SystemInjecteeImpl;
v = v.<org.jvnet.hk.internal.Utilities$AnnotationInformation: java.util.Set qualifiers>;
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.util.Set getFieldAdjustedQualifierAnnotations(java.lang.reflect.Field,java.util.Set)>(v, v);
v = v.<org.jvnet.hk.internal.Utilities$AnnotationInformation: boolean optional>;
v = v.<org.jvnet.hk.internal.Utilities$AnnotationInformation: boolean self>;
v = v.<org.jvnet.hk.internal.Utilities$AnnotationInformation: org.glassfish.hk.api.Unqualified unqualified>;
v = (int) -1;
specialinvoke v.<org.jvnet.hk.internal.SystemInjecteeImpl: void <init>(java.lang.reflect.Type,java.util.Set,int,java.lang.reflect.AnnotatedElement,boolean,boolean,org.glassfish.hk.api.Unqualified,org.glassfish.hk.api.ActiveDescriptor)>(v, v, v, v, v, v, v, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
return v;
}
public static void validateSelfInjectees(org.glassfish.hk.api.ActiveDescriptor, java.util.List, org.jvnet.hk.internal.Collector)
{
org.glassfish.hk.api.ActiveDescriptor v;
java.lang.String v, v, v, v;
org.jvnet.hk.internal.Collector v;
boolean v, v, v, v, v;
java.util.Iterator v;
java.util.Set v;
java.lang.IllegalArgumentException v, v, v, v;
java.util.List v;
java.lang.reflect.Type v;
java.lang.Class v, v;
java.lang.Object v;
v := @parameter: org.glassfish.hk.api.ActiveDescriptor;
v := @parameter: java.util.List;
v := @parameter: org.jvnet.hk.internal.Collector;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.glassfish.hk.api.Injectee: boolean isSelf()>();
if v == 0 goto label;
v = interfaceinvoke v.<org.glassfish.hk.api.Injectee: java.lang.reflect.Type getRequiredType()>();
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.Class getRawClass(java.lang.reflect.Type)>(v);
if v == null goto label;
v = class "Lorg/glassfish/hk2/api/ActiveDescriptor;";
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
label:
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.glassfish.hk.api.Injectee)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Injection point \u does not have the required type of ActiveDescriptor");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
label:
v = interfaceinvoke v.<org.glassfish.hk.api.Injectee: boolean isOptional()>();
if v == 0 goto label;
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.glassfish.hk.api.Injectee)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Injection point \u is marked both @Optional and @Self");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
label:
v = interfaceinvoke v.<org.glassfish.hk.api.Injectee: java.util.Set getRequiredQualifiers()>();
v = interfaceinvoke v.<java.util.Set: boolean isEmpty()>();
if v != 0 goto label;
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.glassfish.hk.api.Injectee)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Injection point \u is marked @Self but has other qualifiers");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
label:
if v != null goto label;
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.glassfish.hk.api.Injectee)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("A class with injection point \u is being created or injected via the non-managed ServiceLocator API");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
virtualinvoke v.<org.jvnet.hk.internal.Collector: void addThrowable(java.lang.Throwable)>(v);
goto label;
label:
return;
}
public static java.util.Set fixAndCheckQualifiers(java.lang.'annotation'.Annotation[], java.lang.String)
{
java.lang.'annotation'.Annotation[] v;
java.util.HashSet v, v;
int v, v;
java.lang.String v, v, v, v, v, v, v;
boolean v, v, v, v;
java.lang.IllegalArgumentException v, v, v;
java.lang.'annotation'.Annotation v;
java.lang.Class v;
v := @parameter: java.lang.'annotation'.Annotation[];
v := @parameter: java.lang.String;
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = interfaceinvoke v.<java.lang.'annotation'.Annotation: java.lang.Class annotationType()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = interfaceinvoke v.<java.util.Set: boolean contains(java.lang.Object)>(v);
if v == 0 goto label;
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u appears more than once in the qualifier list");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
v = v instanceof jakarta.inject.Named;
if v == 0 goto label;
v = interfaceinvoke v.<jakarta.inject.Named: java.lang.String value()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("");
if v == 0 goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("The @Named qualifier must have a value");
throw v;
label:
if v == null goto label;
v = interfaceinvoke v.<jakarta.inject.Named: java.lang.String value()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = new java.lang.IllegalArgumentException;
v = interfaceinvoke v.<jakarta.inject.Named: java.lang.String value()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("The name passed to the method (\u) does not match the value of the @Named qualifier (\u)");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
v = v + 1;
goto label;
label:
return v;
}
public static java.lang.Object createService(org.glassfish.hk.api.ActiveDescriptor, org.glassfish.hk.api.Injectee, org.jvnet.hk.internal.ServiceLocatorImpl, org.glassfish.hk.api.ServiceHandle, java.lang.Class)
{
java.lang.Throwable v, v;
java.lang.IllegalStateException v, v, v;
org.jvnet.hk.internal.ProxyUtilities v;
org.glassfish.hk.api.ActiveDescriptor v;
org.jvnet.hk.internal.PerLocatorUtilities v;
java.lang.String v, v, v, v;
boolean v, v, v, v, v, v;
java.lang.IllegalArgumentException v;
org.glassfish.hk.api.ServiceHandle v;
org.glassfish.hk.api.Injectee v;
org.glassfish.hk.api.MultiException v, v, v, v;
org.jvnet.hk.internal.ServiceLocatorImpl v;
java.lang.Class v, v;
java.lang.Object v, v;
org.glassfish.hk.api.Context v;
v := @parameter: org.glassfish.hk.api.ActiveDescriptor;
v := @parameter: org.glassfish.hk.api.Injectee;
v := @parameter: org.jvnet.hk.internal.ServiceLocatorImpl;
v := @parameter: org.glassfish.hk.api.ServiceHandle;
v := @parameter: java.lang.Class;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>()>();
throw v;
label:
v = interfaceinvoke v.<org.glassfish.hk.api.ActiveDescriptor: boolean isReified()>();
if v != 0 goto label;
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: org.glassfish.hk.api.ActiveDescriptor reifyDescriptor(org.glassfish.hk.api.Descriptor,org.glassfish.hk.api.Injectee)>(v, v);
label:
v = staticinvoke <org.jvnet.hk.internal.Utilities: boolean isProxiable(org.glassfish.hk.api.ActiveDescriptor,org.glassfish.hk.api.Injectee)>(v, v);
if v == 0 goto label;
v = staticinvoke <org.jvnet.hk.internal.Utilities: boolean proxiesAvailable()>();
if v != 0 goto label;
v = new java.lang.IllegalStateException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.glassfish.hk.api.ActiveDescriptor)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("A descriptor \u requires a proxy, but the proxyable library is not on the classpath");
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: org.jvnet.hk.internal.PerLocatorUtilities getPerLocatorUtilities()>();
v = virtualinvoke v.<org.jvnet.hk.internal.PerLocatorUtilities: org.jvnet.hk.internal.ProxyUtilities getProxyUtilities()>();
v = virtualinvoke v.<org.jvnet.hk.internal.ProxyUtilities: java.lang.Object generateProxy(java.lang.Class,org.jvnet.hk.internal.ServiceLocatorImpl,org.glassfish.hk.api.ActiveDescriptor,org.jvnet.hk.internal.ServiceHandleImpl,org.glassfish.hk.api.Injectee)>(v, v, v, v, v);
return v;
label:
v = interfaceinvoke v.<org.glassfish.hk.api.ActiveDescriptor: java.lang.Class getScopeAnnotation()>();
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: org.glassfish.hk.api.Context resolveContext(java.lang.Class)>(v);
label:
goto label;
label:
v := @caughtexception;
if v == null goto label;
v = interfaceinvoke v.<org.glassfish.hk.api.Injectee: boolean isOptional()>();
if v == 0 goto label;
return null;
label:
v = new java.lang.IllegalStateException;
v = interfaceinvoke v.<org.glassfish.hk.api.ActiveDescriptor: java.lang.String getScope()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.glassfish.hk.api.ActiveDescriptor,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("While attempting to create a service for \u in scope \u an error occured while locating the context");
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>(v);
v = v instanceof org.glassfish.hk.api.MultiException;
if v == 0 goto label;
virtualinvoke v.<org.glassfish.hk.api.MultiException: void addError(java.lang.Throwable)>(v);
throw v;
label:
v = new org.glassfish.hk.api.MultiException;
specialinvoke v.<org.glassfish.hk.api.MultiException: void <init>(java.lang.Throwable)>(v);
virtualinvoke v.<org.glassfish.hk.api.MultiException: void addError(java.lang.Throwable)>(v);
throw v;
label:
v = interfaceinvoke v.<org.glassfish.hk.api.Context: java.lang.Object findOrCreate(org.glassfish.hk.api.ActiveDescriptor,org.glassfish.hk.api.ServiceHandle)>(v, v);
label:
goto label;
label:
v := @caughtexception;
throw v;
label:
v := @caughtexception;
v = new org.glassfish.hk.api.MultiException;
specialinvoke v.<org.glassfish.hk.api.MultiException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
if v != null goto label;
v = interfaceinvoke v.<org.glassfish.hk.api.Context: boolean supportsNullCreation()>();
if v != 0 goto label;
v = new org.glassfish.hk.api.MultiException;
v = new java.lang.IllegalStateException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.glassfish.hk.api.Context,org.glassfish.hk.api.ActiveDescriptor,org.glassfish.hk.api.ServiceHandle)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Context \u findOrCreate returned a null for descriptor \u and handle \u0001");
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>(v);
specialinvoke v.<org.glassfish.hk.api.MultiException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
return v;
catch java.lang.Throwable from label to label with label;
catch org.glassfish.hk.api.MultiException from label to label with label;
catch java.lang.Throwable from label to label with label;
}
static org.jvnet.hk.internal.Utilities$Interceptors getAllInterceptors(org.jvnet.hk.internal.ServiceLocatorImpl, org.glassfish.hk.api.ActiveDescriptor, java.lang.Class, java.lang.reflect.Constructor)
{
org.jvnet.hk.internal.Utilities$Interceptors v, v, v;
org.glassfish.hk.api.Filter v;
org.glassfish.hk.utilities.reflection.ClassReflectionHelper v;
org.glassfish.hk.api.ActiveDescriptor v;
java.lang.reflect.Method v;
boolean v, v, v, v, v, v, v, v, v, v;
java.util.Set v, v;
org.jvnet.hk.internal.Utilities$5 v;
java.util.List v, v, v;
org.jvnet.hk.internal.ServiceLocatorImpl v;
java.lang.reflect.Constructor v;
java.util.ArrayList v, v;
java.util.HashSet v;
java.util.LinkedHashMap v;
java.util.Iterator v, v, v;
java.lang.Class v;
java.lang.Object v, v, v, v;
v := @parameter: org.jvnet.hk.internal.ServiceLocatorImpl;
v := @parameter: org.glassfish.hk.api.ActiveDescriptor;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.reflect.Constructor;
if v == null goto label;
if v == null goto label;
v = staticinvoke <org.jvnet.hk.internal.Utilities: boolean isFinal(java.lang.Class)>(v);
if v == 0 goto label;
label:
v = <org.jvnet.hk.internal.Utilities: org.jvnet.hk.internal.Utilities$Interceptors EMTPY_INTERCEPTORS>;
return v;
label:
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: org.glassfish.hk.utilities.reflection.ClassReflectionHelper getClassReflectionHelper()>();
v = virtualinvoke v.<org.jvnet.hk.internal.ServiceLocatorImpl: java.util.List getInterceptionServices()>();
if v == null goto label;
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v == 0 goto label;
label:
v = <org.jvnet.hk.internal.Utilities: org.jvnet.hk.internal.Utilities$Interceptors EMTPY_INTERCEPTORS>;
return v;
label:
v = interfaceinvoke v.<org.glassfish.hk.api.ActiveDescriptor: java.util.Set getAdvertisedContracts()>();
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = <org.jvnet.hk.internal.Utilities: java.util.HashSet NOT_INTERCEPTED>;
v = virtualinvoke v.<java.util.HashSet: boolean contains(java.lang.Object)>(v);
if v == 0 goto label;
v = <org.jvnet.hk.internal.Utilities: org.jvnet.hk.internal.Utilities$Interceptors EMTPY_INTERCEPTORS>;
return v;
label:
v = new java.util.LinkedHashMap;
specialinvoke v.<java.util.LinkedHashMap: void <init>()>();
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.glassfish.hk.api.InterceptionService: org.glassfish.hk.api.Filter getDescriptorFilter()>();
v = staticinvoke <org.glassfish.hk.utilities.BuilderHelper: boolean filterMatches(org.glassfish.hk.api.Descriptor,org.glassfish.hk.api.Filter)>(v, v);
if v == 0 goto label;
v = interfaceinvoke v.<org.glassfish.hk.utilities.reflection.ClassReflectionHelper: java.util.Set getAllMethods(java.lang.Class)>(v);
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.glassfish.hk.utilities.reflection.MethodWrapper: java.lang.reflect.Method getMethod()>();
v = staticinvoke <org.jvnet.hk.internal.Utilities: boolean isFinal(java.lang.reflect.Member)>(v);
if v != 0 goto label;
v = interfaceinvoke v.<org.glassfish.hk.api.InterceptionService: java.util.List getMethodInterceptors(java.lang.reflect.Method)>(v);
if v == null goto label;
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v != 0 goto label;
v = virtualinvoke v.<java.util.LinkedHashMap: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = v;
virtualinvoke v.<java.util.LinkedHashMap: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
interfaceinvoke v.<java.util.List: boolean addAll(java.util.Collection)>(v);
goto label;
label:
v = interfaceinvoke v.<org.glassfish.hk.api.InterceptionService: java.util.List getConstructorInterceptors(java.lang.reflect.Constructor)>(v);
if v == null goto label;
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v != 0 goto label;
virtualinvoke v.<java.util.ArrayList: boolean addAll(java.util.Collection)>(v);
goto label;
label:
v = new org.jvnet.hk.internal.Utilities$5;
specialinvoke v.<org.jvnet.hk.internal.Utilities$5: void <init>(java.util.LinkedHashMap,java.util.ArrayList)>(v, v);
return v;
}
public static boolean isTypeSafe(java.lang.reflect.Type, java.lang.reflect.Type)
{
java.lang.reflect.Type v, v;
java.lang.Class v, v, v;
boolean v, v, v, v;
v := @parameter: java.lang.reflect.Type;
v := @parameter: java.lang.reflect.Type;
v = staticinvoke <org.glassfish.hk.utilities.reflection.TypeChecker: boolean isRawTypeSafe(java.lang.reflect.Type,java.lang.reflect.Type)>(v, v);
if v == 0 goto label;
return 1;
label:
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.Class getRawClass(java.lang.reflect.Type)>(v);
if v != null goto label;
return 0;
label:
v = virtualinvoke v.<java.lang.Class: boolean isAnnotation()>();
if v != 0 goto label;
return 0;
label:
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.Class getRawClass(java.lang.reflect.Type)>(v);
if v != null goto label;
return 0;
label:
v = virtualinvoke v.<java.lang.Class: boolean isAnnotationPresent(java.lang.Class)>(v);
if v == 0 goto label;
return 1;
label:
v = staticinvoke <org.jvnet.hk.internal.Utilities: java.lang.Class getScopeAnnotationType(java.lang.Class,org.glassfish.hk.api.Descriptor)>(v, null);
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
return v;
}
public static synchronized boolean proxiesAvailable()
{
java.lang.Throwable v;
java.lang.Boolean v, v, v, v;
java.lang.Class v;
java.lang.ClassLoader v;
boolean v;
v = <org.jvnet.hk.internal.Utilities: java.lang.Boolean proxiesAvailable>;
if v == null goto label;
v = <org.jvnet.hk.internal.Utilities: java.lang.Boolean proxiesAvailable>;
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
return v;
label:
v = class "Lorg/jvnet/hk2/internal/Utilities;";
v = virtualinvoke v.<java.lang.Class: java.lang.ClassLoader getClassLoader()>();
if v != null goto label;
v = staticinvoke <java.lang.ClassLoader: java.lang.ClassLoader getSystemClassLoader()>();
label:
virtualinvoke v.<java.lang.ClassLoader: java.lang.Class loadClass(java.lang.String)>("javassist.util.proxy.MethodHandler");
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(1);
<org.jvnet.hk.internal.Utilities: java.lang.Boolean proxiesAvailable> = v;
label:
return 1;
label:
v := @caughtexception;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(0);
<org.jvnet.hk.internal.Utilities: java.lang.Boolean proxiesAvailable> = v;
return 0;
catch java.lang.Throwable from label to label with label;
}
static void <clinit>()
{
boolean v;
java.util.Set v;
org.jvnet.hk.internal.Utilities$AnnotationInformation v;
org.jvnet.hk.internal.Utilities$1 v;
org.jvnet.hk.internal.Utilities$4 v;
java.util.HashSet v, v, v, v, v, v, v, v, v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v;
java.lang.Class v, v, v, v, v, v, v, v, v, v;
java.lang.Object v;
v = new org.jvnet.hk.internal.Utilities$1;
specialinvoke v.<org.jvnet.hk.internal.Utilities$1: void <init>()>();
v = staticinvoke <java.security.AccessController: java.lang.Object doPrivileged(java.security.PrivilegedAction)>(v);
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
<org.jvnet.hk.internal.Utilities: boolean USE_SOFT_REFERENCE> = v;
v = new org.jvnet.hk.internal.Utilities$AnnotationInformation;
v = staticinvoke <java.util.Collections: java.util.Set emptySet()>();
specialinvoke v.<org.jvnet.hk.internal.Utilities$AnnotationInformation: void <init>(java.util.Set,boolean,boolean,org.glassfish.hk.api.Unqualified)>(v, 0, 0, null);
<org.jvnet.hk.internal.Utilities: org.jvnet.hk.internal.Utilities$AnnotationInformation DEFAULT_ANNOTATION_INFORMATION> = v;
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
<org.jvnet.hk.internal.Utilities: java.util.HashSet NOT_INTERCEPTED> = v;
v = <org.jvnet.hk.internal.Utilities: java.util.HashSet NOT_INTERCEPTED>;
v = class "Lorg/glassfish/hk2/api/ServiceLocator;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
virtualinvoke v.<java.util.HashSet: boolean add(java.lang.Object)>(v);
v = <org.jvnet.hk.internal.Utilities: java.util.HashSet NOT_INTERCEPTED>;
v = class "Lorg/glassfish/hk2/api/InstanceLifecycleListener;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
virtualinvoke v.<java.util.HashSet: boolean add(java.lang.Object)>(v);
v = <org.jvnet.hk.internal.Utilities: java.util.HashSet NOT_INTERCEPTED>;
v = class "Lorg/glassfish/hk2/api/InjectionResolver;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
virtualinvoke v.<java.util.HashSet: boolean add(java.lang.Object)>(v);
v = <org.jvnet.hk.internal.Utilities: java.util.HashSet NOT_INTERCEPTED>;
v = class "Lorg/glassfish/hk2/api/ErrorService;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
virtualinvoke v.<java.util.HashSet: boolean add(java.lang.Object)>(v);
v = <org.jvnet.hk.internal.Utilities: java.util.HashSet NOT_INTERCEPTED>;
v = class "Lorg/glassfish/hk2/api/ClassAnalyzer;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
virtualinvoke v.<java.util.HashSet: boolean add(java.lang.Object)>(v);
v = <org.jvnet.hk.internal.Utilities: java.util.HashSet NOT_INTERCEPTED>;
v = class "Lorg/glassfish/hk2/api/DynamicConfigurationListener;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
virtualinvoke v.<java.util.HashSet: boolean add(java.lang.Object)>(v);
v = <org.jvnet.hk.internal.Utilities: java.util.HashSet NOT_INTERCEPTED>;
v = class "Lorg/glassfish/hk2/api/DynamicConfigurationService;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
virtualinvoke v.<java.util.HashSet: boolean add(java.lang.Object)>(v);
v = <org.jvnet.hk.internal.Utilities: java.util.HashSet NOT_INTERCEPTED>;
v = class "Lorg/glassfish/hk2/api/InterceptionService;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
virtualinvoke v.<java.util.HashSet: boolean add(java.lang.Object)>(v);
v = <org.jvnet.hk.internal.Utilities: java.util.HashSet NOT_INTERCEPTED>;
v = class "Lorg/glassfish/hk2/api/ValidationService;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
virtualinvoke v.<java.util.HashSet: boolean add(java.lang.Object)>(v);
v = <org.jvnet.hk.internal.Utilities: java.util.HashSet NOT_INTERCEPTED>;
v = class "Lorg/glassfish/hk2/api/Context;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
virtualinvoke v.<java.util.HashSet: boolean add(java.lang.Object)>(v);
v = new org.jvnet.hk.internal.Utilities$4;
specialinvoke v.<org.jvnet.hk.internal.Utilities$4: void <init>()>();
<org.jvnet.hk.internal.Utilities: org.jvnet.hk.internal.Utilities$Interceptors EMTPY_INTERCEPTORS> = v;
<org.jvnet.hk.internal.Utilities: java.lang.Boolean proxiesAvailable> = null;
return;
}
}