public class org.glassfish.hk.utilities.BuilderHelper extends java.lang.Object
{
public static final java.lang.String NAME_KEY;
public static final java.lang.String QUALIFIER_KEY;
public static final java.lang.String TOKEN_SEPARATOR;
public void <init>()
{
org.glassfish.hk.utilities.BuilderHelper v;
v := @this: org.glassfish.hk.utilities.BuilderHelper;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public static org.glassfish.hk.api.IndexedFilter createContractFilter(java.lang.String)
{
org.glassfish.hk.internal.IndexedFilterImpl v;
java.lang.String v;
v := @parameter: java.lang.String;
v = new org.glassfish.hk.internal.IndexedFilterImpl;
specialinvoke v.<org.glassfish.hk.internal.IndexedFilterImpl: void <init>(java.lang.String,java.lang.String)>(v, null);
return v;
}
public static org.glassfish.hk.api.IndexedFilter createNameFilter(java.lang.String)
{
org.glassfish.hk.internal.IndexedFilterImpl v;
java.lang.String v;
v := @parameter: java.lang.String;
v = new org.glassfish.hk.internal.IndexedFilterImpl;
specialinvoke v.<org.glassfish.hk.internal.IndexedFilterImpl: void <init>(java.lang.String,java.lang.String)>(null, v);
return v;
}
public static org.glassfish.hk.api.IndexedFilter createNameAndContractFilter(java.lang.String, java.lang.String)
{
org.glassfish.hk.internal.IndexedFilterImpl v;
java.lang.String v, v;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v = new org.glassfish.hk.internal.IndexedFilterImpl;
specialinvoke v.<org.glassfish.hk.internal.IndexedFilterImpl: void <init>(java.lang.String,java.lang.String)>(v, v);
return v;
}
public static org.glassfish.hk.api.IndexedFilter createTokenizedFilter(java.lang.String) throws java.lang.IllegalArgumentException
{
java.util.StringTokenizer v;
int v, v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v;
java.util.LinkedHashSet v;
boolean v, v, v, v, v;
java.lang.IllegalArgumentException v, v, v, v;
org.glassfish.hk.utilities.BuilderHelper$1 v;
v := @parameter: java.lang.String;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("null passed to createTokenizedFilter");
throw v;
label:
v = new java.util.StringTokenizer;
specialinvoke v.<java.util.StringTokenizer: void <init>(java.lang.String,java.lang.String)>(v, ";");
v = null;
v = null;
v = new java.util.LinkedHashSet;
specialinvoke v.<java.util.LinkedHashSet: void <init>()>();
v = 1;
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>(";");
if v == 0 goto label;
v = 0;
label:
v = virtualinvoke v.<java.util.StringTokenizer: boolean hasMoreTokens()>();
if v == 0 goto label;
v = virtualinvoke v.<java.util.StringTokenizer: java.lang.String nextToken()>();
if v == 0 goto label;
v = 0;
v = virtualinvoke v.<java.lang.String: int length()>();
if v <= 0 goto label;
v = v;
goto label;
label:
v = virtualinvoke v.<java.lang.String: int indexOf(int)>(61);
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[])>("No = character found in token \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, v);
v = v + 1;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(v);
v = virtualinvoke v.<java.lang.String: int length()>();
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[])>("No value found in token \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
v = "name";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = v;
goto label;
label:
v = "qualifier";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
goto label;
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[])>("Unknown key: \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
v = new org.glassfish.hk.utilities.BuilderHelper$1;
specialinvoke v.<org.glassfish.hk.utilities.BuilderHelper$1: void <init>(java.util.Set,java.lang.String,java.lang.String)>(v, v, v);
return v;
}
public static org.glassfish.hk.api.IndexedFilter createSpecificDescriptorFilter(org.glassfish.hk.api.Descriptor)
{
long v, v;
java.lang.IllegalArgumentException v, v;
java.lang.Long v, v, v, v;
java.lang.String v, v;
org.glassfish.hk.internal.SpecificFilterImpl v;
org.glassfish.hk.api.Descriptor v;
v := @parameter: org.glassfish.hk.api.Descriptor;
v = staticinvoke <org.glassfish.hk.utilities.ServiceLocatorUtilities: java.lang.String getBestContract(org.glassfish.hk.api.Descriptor)>(v);
v = interfaceinvoke v.<org.glassfish.hk.api.Descriptor: java.lang.String getName()>();
v = interfaceinvoke v.<org.glassfish.hk.api.Descriptor: java.lang.Long getServiceId()>();
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("The descriptor must have a specific service ID");
throw v;
label:
v = interfaceinvoke v.<org.glassfish.hk.api.Descriptor: java.lang.Long getLocatorId()>();
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("The descriptor must have a specific locator ID");
throw v;
label:
v = new org.glassfish.hk.internal.SpecificFilterImpl;
v = interfaceinvoke v.<org.glassfish.hk.api.Descriptor: java.lang.Long getServiceId()>();
v = virtualinvoke v.<java.lang.Long: long longValue()>();
v = interfaceinvoke v.<org.glassfish.hk.api.Descriptor: java.lang.Long getLocatorId()>();
v = virtualinvoke v.<java.lang.Long: long longValue()>();
specialinvoke v.<org.glassfish.hk.internal.SpecificFilterImpl: void <init>(java.lang.String,java.lang.String,long,long)>(v, v, v, v);
return v;
}
public static org.glassfish.hk.api.IndexedFilter createDescriptorFilter(org.glassfish.hk.api.Descriptor, boolean)
{
org.glassfish.hk.utilities.BuilderHelper$2 v;
org.glassfish.hk.utilities.DescriptorImpl v;
boolean v;
org.glassfish.hk.api.Descriptor v, v;
v := @parameter: org.glassfish.hk.api.Descriptor;
v := @parameter: boolean;
if v == 0 goto label;
v = new org.glassfish.hk.utilities.DescriptorImpl;
v = v;
specialinvoke v.<org.glassfish.hk.utilities.DescriptorImpl: void <init>(org.glassfish.hk.api.Descriptor)>(v);
goto label;
label:
v = v;
label:
v = new org.glassfish.hk.utilities.BuilderHelper$2;
specialinvoke v.<org.glassfish.hk.utilities.BuilderHelper$2: void <init>(org.glassfish.hk.api.Descriptor)>(v);
return v;
}
public static org.glassfish.hk.api.IndexedFilter createDescriptorFilter(org.glassfish.hk.api.Descriptor)
{
org.glassfish.hk.api.Descriptor v;
org.glassfish.hk.api.IndexedFilter v;
v := @parameter: org.glassfish.hk.api.Descriptor;
v = staticinvoke <org.glassfish.hk.utilities.BuilderHelper: org.glassfish.hk.api.IndexedFilter createDescriptorFilter(org.glassfish.hk.api.Descriptor,boolean)>(v, 1);
return v;
}
public static org.glassfish.hk.api.Filter allFilter()
{
org.glassfish.hk.internal.StarFilter v;
v = staticinvoke <org.glassfish.hk.internal.StarFilter: org.glassfish.hk.internal.StarFilter getDescriptorFilter()>();
return v;
}
public static org.glassfish.hk.utilities.DescriptorBuilder link(java.lang.String, boolean) throws java.lang.IllegalArgumentException
{
org.glassfish.hk.internal.DescriptorBuilderImpl v;
java.lang.String v;
java.lang.IllegalArgumentException v;
boolean v;
v := @parameter: java.lang.String;
v := @parameter: boolean;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>()>();
throw v;
label:
v = new org.glassfish.hk.internal.DescriptorBuilderImpl;
specialinvoke v.<org.glassfish.hk.internal.DescriptorBuilderImpl: void <init>(java.lang.String,boolean)>(v, v);
return v;
}
public static org.glassfish.hk.utilities.DescriptorBuilder link(java.lang.String) throws java.lang.IllegalArgumentException
{
java.lang.String v;
org.glassfish.hk.utilities.DescriptorBuilder v;
v := @parameter: java.lang.String;
v = staticinvoke <org.glassfish.hk.utilities.BuilderHelper: org.glassfish.hk.utilities.DescriptorBuilder link(java.lang.String,boolean)>(v, 1);
return v;
}
public static org.glassfish.hk.utilities.DescriptorBuilder link(java.lang.Class, boolean) throws java.lang.IllegalArgumentException
{
org.glassfish.hk.utilities.DescriptorBuilder v;
java.lang.Class v;
java.lang.String v;
java.lang.IllegalArgumentException v;
boolean v;
v := @parameter: java.lang.Class;
v := @parameter: boolean;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>()>();
throw v;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = staticinvoke <org.glassfish.hk.utilities.BuilderHelper: org.glassfish.hk.utilities.DescriptorBuilder link(java.lang.String,boolean)>(v, v);
return v;
}
public static org.glassfish.hk.utilities.DescriptorBuilder link(java.lang.Class) throws java.lang.IllegalArgumentException
{
org.glassfish.hk.utilities.DescriptorBuilder v;
java.lang.Class v, v;
java.lang.IllegalArgumentException v;
boolean v, v;
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 = class "Lorg/glassfish/hk2/api/Factory;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = staticinvoke <org.glassfish.hk.utilities.BuilderHelper: org.glassfish.hk.utilities.DescriptorBuilder link(java.lang.Class,boolean)>(v, v);
return v;
}
public static org.glassfish.hk.utilities.ActiveDescriptorBuilder activeLink(java.lang.Class) throws java.lang.IllegalArgumentException
{
java.lang.Class v;
java.lang.IllegalArgumentException v;
org.glassfish.hk.internal.ActiveDescriptorBuilderImpl v;
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 = new org.glassfish.hk.internal.ActiveDescriptorBuilderImpl;
specialinvoke v.<org.glassfish.hk.internal.ActiveDescriptorBuilderImpl: void <init>(java.lang.Class)>(v);
return v;
}
public static org.glassfish.hk.utilities.AbstractActiveDescriptor createConstantDescriptor(java.lang.Object)
{
java.lang.Object[] v;
java.util.HashSet v;
int v, v, v;
java.lang.String v;
java.lang.Class[] v;
java.util.Set v;
java.lang.IllegalArgumentException v;
org.glassfish.hk.utilities.AbstractActiveDescriptor v;
java.lang.'annotation'.Annotation v;
java.lang.reflect.Type[] v;
java.lang.Class v, v, v;
java.lang.Object v;
v := @parameter: java.lang.Object;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>()>();
throw v;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
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;
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
v = v;
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];
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
v = v + 1;
goto label;
label:
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.util.Set getAdvertisedTypesFromObject(java.lang.Object,java.lang.Class)>(v, class "Lorg/jvnet/hk2/annotations/Contract;");
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.String getName(java.lang.Class)>(v);
v = interfaceinvoke v.<java.util.Set: int size()>();
v = newarray (java.lang.reflect.Type)[v];
v = interfaceinvoke v.<java.util.Set: java.lang.Object[] toArray(java.lang.Object[])>(v);
v = staticinvoke <org.glassfish.hk.utilities.BuilderHelper: org.glassfish.hk.utilities.AbstractActiveDescriptor createConstantDescriptor(java.lang.Object,java.lang.String,java.lang.reflect.Type[])>(v, v, v);
return v;
}
public static int getRank(java.lang.Class)
{
int v;
java.lang.'annotation'.Annotation v;
java.lang.Class v, v;
boolean v;
v := @parameter: java.lang.Class;
label:
if v == null goto label;
v = class "Ljava/lang/Object;";
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = virtualinvoke v.<java.lang.Class: 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()>();
return v;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.Class getSuperclass()>();
goto label;
label:
return 0;
}
public static transient org.glassfish.hk.utilities.AbstractActiveDescriptor createConstantDescriptor(java.lang.Object, java.lang.String, java.lang.reflect.Type[])
{
boolean v, v, v;
java.util.Set v, v;
org.glassfish.hk.internal.ConstantActiveDescriptor v;
java.lang.reflect.Type v;
java.lang.'annotation'.Annotation v, v, v, v, v;
java.lang.reflect.Type[] v;
java.util.HashMap v;
int v, v, v, v;
java.lang.Boolean v, v;
java.lang.String v, v;
java.util.LinkedHashSet v;
java.util.Iterator v;
org.glassfish.hk.api.DescriptorVisibility v;
java.lang.IllegalArgumentException v;
java.lang.Class v, v, v, v, v, v, v;
java.lang.Object v, v;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.String;
v := @parameter: java.lang.reflect.Type[];
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>()>();
throw v;
label:
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.'annotation'.Annotation getScopeAnnotationFromObject(java.lang.Object)>(v);
if v != null goto label;
v = class "Lorg/glassfish/hk2/api/PerLookup;";
goto label;
label:
v = interfaceinvoke v.<java.lang.'annotation'.Annotation: java.lang.Class annotationType()>();
label:
v = v;
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.util.Set getQualifiersFromObject(java.lang.Object)>(v);
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
if v == null goto label;
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 = lengthof v;
if v > 0 goto label;
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.util.Set getAdvertisedTypesFromObject(java.lang.Object,java.lang.Class)>(v, class "Lorg/jvnet/hk2/annotations/Contract;");
goto label;
label:
v = new java.util.LinkedHashSet;
specialinvoke v.<java.util.LinkedHashSet: void <init>()>();
v = v;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
v = v + 1;
goto label;
label:
v = null;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
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 = null;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
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.Object: java.lang.Class getClass()>();
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 = null;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
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 = interfaceinvoke v.<org.jvnet.hk.annotations.Service: java.lang.String analyzer()>();
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.glassfish.hk.utilities.BuilderHelper: int getRank(java.lang.Class)>(v);
v = new org.glassfish.hk.internal.ConstantActiveDescriptor;
specialinvoke v.<org.glassfish.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,java.lang.Boolean,java.lang.Boolean,java.lang.String,java.util.Map,int)>(v, v, v, v, v, v, v, v, v, v, v);
return v;
}
public static org.glassfish.hk.utilities.DescriptorImpl createDescriptorFromClass(java.lang.Class)
{
org.glassfish.hk.api.DescriptorType v;
java.util.HashMap v;
org.glassfish.hk.api.PerLookup v;
int v;
java.lang.Boolean v, v;
java.lang.String v, v, v;
org.glassfish.hk.utilities.DescriptorImpl v, v;
boolean v, v, v;
org.glassfish.hk.api.DescriptorVisibility v;
java.util.Set v, v;
java.lang.'annotation'.Annotation v, v, v, v;
java.lang.Class v, v, v;
v := @parameter: java.lang.Class;
if v != null goto label;
v = new org.glassfish.hk.utilities.DescriptorImpl;
specialinvoke v.<org.glassfish.hk.utilities.DescriptorImpl: void <init>()>();
return v;
label:
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.util.Set getContractsFromClass(java.lang.Class,java.lang.Class)>(v, class "Lorg/jvnet/hk2/annotations/Contract;");
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.String getName(java.lang.Class)>(v);
v = staticinvoke <org.glassfish.hk.utilities.ServiceLocatorUtilities: org.glassfish.hk.api.PerLookup getPerLookupAnnotation()>();
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.lang.'annotation'.Annotation getScopeFromClass(java.lang.Class,java.lang.'annotation'.Annotation)>(v, v);
v = interfaceinvoke v.<java.lang.'annotation'.Annotation: java.lang.Class annotationType()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: java.util.Set getQualifiersFromClass(java.lang.Class)>(v);
v = <org.glassfish.hk.api.DescriptorType: org.glassfish.hk.api.DescriptorType CLASS>;
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 = <org.glassfish.hk.api.DescriptorType: org.glassfish.hk.api.DescriptorType PROVIDE_METHOD>;
label:
v = null;
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 = null;
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.glassfish.hk.utilities.DescriptorImpl;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
specialinvoke v.<org.glassfish.hk.utilities.DescriptorImpl: void <init>(java.util.Set,java.lang.String,java.lang.String,java.lang.String,java.util.Map,java.util.Set,org.glassfish.hk.api.DescriptorType,org.glassfish.hk.api.DescriptorVisibility,org.glassfish.hk.api.HK2Loader,int,java.lang.Boolean,java.lang.Boolean,java.lang.String,java.lang.Long,java.lang.Long)>(v, v, v, v, v, v, v, v, null, v, v, v, null, null, null);
return v;
}
public static org.glassfish.hk.utilities.DescriptorImpl deepCopyDescriptor(org.glassfish.hk.api.Descriptor)
{
org.glassfish.hk.utilities.DescriptorImpl v;
org.glassfish.hk.api.Descriptor v;
v := @parameter: org.glassfish.hk.api.Descriptor;
v = new org.glassfish.hk.utilities.DescriptorImpl;
specialinvoke v.<org.glassfish.hk.utilities.DescriptorImpl: void <init>(org.glassfish.hk.api.Descriptor)>(v);
return v;
}
public static void getMetadataValues(java.lang.'annotation'.Annotation, java.util.Map)
{
java.lang.Throwable v;
java.lang.Object[] v;
java.util.Map v;
int v, v, v, v;
java.lang.String v, v, v, v;
java.lang.reflect.Method v;
boolean v, v, v;
java.lang.IllegalArgumentException v;
org.glassfish.hk.api.MultiException v;
org.glassfish.hk.utilities.BuilderHelper$3 v;
java.lang.'annotation'.Annotation v, v;
java.lang.Class v, v;
java.lang.Object v, v, v;
v := @parameter: java.lang.'annotation'.Annotation;
v := @parameter: java.util.Map;
if v == null goto label;
if v != null goto label;
label:
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>()>();
throw v;
label:
v = interfaceinvoke v.<java.lang.'annotation'.Annotation: java.lang.Class annotationType()>();
v = new org.glassfish.hk.utilities.BuilderHelper$3;
specialinvoke v.<org.glassfish.hk.utilities.BuilderHelper$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];
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Lorg/glassfish/hk2/api/Metadata;");
if v == null goto label;
v = interfaceinvoke v.<org.glassfish.hk.api.Metadata: java.lang.String value()>();
label:
v = newarray (java.lang.Object)[0];
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, 0);
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:
if v == null goto label;
v = v instanceof java.lang.Class;
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v == 0 goto label;
v = staticinvoke <java.lang.reflect.Array: int getLength(java.lang.Object)>(v);
v = 0;
label:
if v >= v goto label;
v = staticinvoke <java.lang.reflect.Array: java.lang.Object get(java.lang.Object,int)>(v, v);
if v == null goto label;
v = v instanceof java.lang.Class;
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: void addMetadata(java.util.Map,java.lang.String,java.lang.String)>(v, v, v);
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.String toString()>();
staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: void addMetadata(java.util.Map,java.lang.String,java.lang.String)>(v, v, v);
label:
v = v + 1;
goto label;
label:
v = null;
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.String toString()>();
label:
if v == null goto label;
staticinvoke <org.glassfish.hk.utilities.reflection.ReflectionHelper: void addMetadata(java.util.Map,java.lang.String,java.lang.String)>(v, v, v);
label:
v = v + 1;
goto label;
label:
return;
catch java.lang.Throwable from label to label with label;
}
public static org.glassfish.hk.api.ServiceHandle createConstantServiceHandle(java.lang.Object)
{
org.glassfish.hk.utilities.BuilderHelper$4 v;
java.lang.Object v;
v := @parameter: java.lang.Object;
v = new org.glassfish.hk.utilities.BuilderHelper$4;
specialinvoke v.<org.glassfish.hk.utilities.BuilderHelper$4: void <init>(java.lang.Object)>(v);
return v;
}
public static boolean filterMatches(org.glassfish.hk.api.Descriptor, org.glassfish.hk.api.Filter)
{
org.glassfish.hk.api.Filter v;
java.util.Set v;
java.lang.IllegalArgumentException v;
java.lang.String v, v, v, v;
boolean v, v, v, v;
org.glassfish.hk.api.Descriptor v;
v := @parameter: org.glassfish.hk.api.Descriptor;
v := @parameter: org.glassfish.hk.api.Filter;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>()>();
throw v;
label:
if v != null goto label;
return 1;
label:
v = v instanceof org.glassfish.hk.api.IndexedFilter;
if v == 0 goto label;
v = interfaceinvoke v.<org.glassfish.hk.api.IndexedFilter: java.lang.String getAdvertisedContract()>();
if v == null goto label;
v = interfaceinvoke v.<org.glassfish.hk.api.Descriptor: java.util.Set getAdvertisedContracts()>();
v = interfaceinvoke v.<java.util.Set: boolean contains(java.lang.Object)>(v);
if v != 0 goto label;
return 0;
label:
v = interfaceinvoke v.<org.glassfish.hk.api.IndexedFilter: java.lang.String getName()>();
if v == null goto label;
v = interfaceinvoke v.<org.glassfish.hk.api.Descriptor: java.lang.String getName()>();
if v != null goto label;
return 0;
label:
v = interfaceinvoke v.<org.glassfish.hk.api.Descriptor: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
return 0;
label:
v = interfaceinvoke v.<org.glassfish.hk.api.Filter: boolean matches(org.glassfish.hk.api.Descriptor)>(v);
return v;
}
}