public class org.eclipse.yasson.internal.AnnotationIntrospector extends java.lang.Object
{
private final org.eclipse.yasson.internal.JsonbContext jsonbContext;
private final org.eclipse.yasson.internal.ConstructorPropertiesAnnotationIntrospector constructorPropertiesIntrospector;
private static final java.util.Set REPEATABLE;
private static final java.util.List TRANSIENT_INCOMPATIBLE;
public void <init>(org.eclipse.yasson.internal.JsonbContext)
{
org.eclipse.yasson.internal.JsonbContext v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
org.eclipse.yasson.internal.ConstructorPropertiesAnnotationIntrospector v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.JsonbContext;
specialinvoke v.<java.lang.Object: void <init>()>();
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.JsonbContext jsonbContext> = v;
v = staticinvoke <org.eclipse.yasson.internal.ConstructorPropertiesAnnotationIntrospector: org.eclipse.yasson.internal.ConstructorPropertiesAnnotationIntrospector forContext(org.eclipse.yasson.internal.JsonbContext)>(v);
v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.ConstructorPropertiesAnnotationIntrospector constructorPropertiesIntrospector> = v;
return;
}
public java.lang.String getJsonbPropertyJsonWriteName(org.eclipse.yasson.internal.model.Property)
{
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v;
java.lang.String v;
org.eclipse.yasson.internal.model.Property v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.Property;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.model.Property: org.eclipse.yasson.internal.model.JsonbAnnotatedElement getGetterElement()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.String getJsonbPropertyCustomizedName(org.eclipse.yasson.internal.model.Property,org.eclipse.yasson.internal.model.JsonbAnnotatedElement)>(v, v);
return v;
}
public java.lang.String getJsonbPropertyJsonReadName(org.eclipse.yasson.internal.model.Property)
{
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v;
java.lang.String v;
org.eclipse.yasson.internal.model.Property v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.Property;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.model.Property: org.eclipse.yasson.internal.model.JsonbAnnotatedElement getSetterElement()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.String getJsonbPropertyCustomizedName(org.eclipse.yasson.internal.model.Property,org.eclipse.yasson.internal.model.JsonbAnnotatedElement)>(v, v);
return v;
}
private java.lang.String getJsonbPropertyCustomizedName(org.eclipse.yasson.internal.model.Property, org.eclipse.yasson.internal.model.JsonbAnnotatedElement)
{
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v, v;
java.lang.'annotation'.Annotation v, v;
java.lang.String v, v, v, v;
org.eclipse.yasson.internal.model.Property v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
boolean v, v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.Property;
v := @parameter: org.eclipse.yasson.internal.model.JsonbAnnotatedElement;
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.'annotation'.Annotation getMethodAnnotation(java.lang.Class,org.eclipse.yasson.internal.model.JsonbAnnotatedElement)>(class "Ljakarta/json/bind/annotation/JsonbProperty;", v);
if v == null goto label;
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbProperty: java.lang.String value()>();
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v != 0 goto label;
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbProperty: java.lang.String value()>();
return v;
label:
v = virtualinvoke v.<org.eclipse.yasson.internal.model.Property: org.eclipse.yasson.internal.model.JsonbAnnotatedElement getFieldElement()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.'annotation'.Annotation getFieldAnnotation(java.lang.Class,org.eclipse.yasson.internal.model.JsonbAnnotatedElement)>(class "Ljakarta/json/bind/annotation/JsonbProperty;", v);
if v == null goto label;
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbProperty: java.lang.String value()>();
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v != 0 goto label;
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbProperty: java.lang.String value()>();
return v;
label:
return null;
}
public org.eclipse.yasson.internal.model.JsonbCreator getCreator(java.lang.Class, jakarta.json.bind.config.PropertyNamingStrategy)
{
java.lang.Object[] v;
org.eclipse.yasson.internal.ConstructorPropertiesAnnotationIntrospector v;
java.lang.'annotation'.Annotation[] v, v;
org.eclipse.yasson.internal.properties.MessageKeys v;
java.lang.reflect.Constructor v;
int v, v, v, v, v;
jakarta.json.bind.JsonbException v;
java.lang.String v;
java.lang.reflect.Method v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
boolean v, v;
java.security.PrivilegedAction v, v;
org.eclipse.yasson.internal.model.JsonbCreator v;
java.lang.'annotation'.Annotation v, v;
java.lang.Class v, v;
java.lang.Object v, v;
jakarta.json.bind.config.PropertyNamingStrategy v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: java.lang.Class;
v := @parameter: jakarta.json.bind.config.PropertyNamingStrategy;
v = null;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.eclipse.yasson.internal.AnnotationIntrospector$getDeclaredConstructors__348: java.security.PrivilegedAction bootstrap$(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.Constructor: java.lang.'annotation'.Annotation[] getDeclaredAnnotations()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.'annotation'.Annotation findAnnotation(java.lang.'annotation'.Annotation[],java.lang.Class)>(v, class "Ljakarta/json/bind/annotation/JsonbCreator;");
if v == null goto label;
v = virtualinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.model.JsonbCreator createJsonbCreator(java.lang.reflect.Executable,org.eclipse.yasson.internal.model.JsonbCreator,java.lang.Class,jakarta.json.bind.config.PropertyNamingStrategy)>(v, v, v, v);
label:
v = v + 1;
goto label;
label:
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.eclipse.yasson.internal.AnnotationIntrospector$getDeclaredMethods__349: java.security.PrivilegedAction bootstrap$(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[] getDeclaredAnnotations()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.'annotation'.Annotation findAnnotation(java.lang.'annotation'.Annotation[],java.lang.Class)>(v, class "Ljakarta/json/bind/annotation/JsonbCreator;");
if v == null goto 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;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getReturnType()>();
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = new jakarta.json.bind.JsonbException;
v = <org.eclipse.yasson.internal.properties.MessageKeys: org.eclipse.yasson.internal.properties.MessageKeys INCOMPATIBLE_FACTORY_CREATOR_RETURN_TYPE>;
v = newarray (java.lang.Object)[2];
v[0] = v;
v[1] = v;
v = staticinvoke <org.eclipse.yasson.internal.properties.Messages: java.lang.String getMessage(org.eclipse.yasson.internal.properties.MessageKeys,java.lang.Object[])>(v, v);
specialinvoke v.<jakarta.json.bind.JsonbException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.model.JsonbCreator createJsonbCreator(java.lang.reflect.Executable,org.eclipse.yasson.internal.model.JsonbCreator,java.lang.Class,jakarta.json.bind.config.PropertyNamingStrategy)>(v, v, v, v);
label:
v = v + 1;
goto label;
label:
if v != null goto label;
v = staticinvoke <org.eclipse.yasson.internal.ClassMultiReleaseExtension: org.eclipse.yasson.internal.model.JsonbCreator findCreator(java.lang.Class,java.lang.reflect.Constructor[],org.eclipse.yasson.internal.AnnotationIntrospector,jakarta.json.bind.config.PropertyNamingStrategy)>(v, v, v, v);
if v != null goto label;
v = v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.ConstructorPropertiesAnnotationIntrospector constructorPropertiesIntrospector>;
v = virtualinvoke v.<org.eclipse.yasson.internal.ConstructorPropertiesAnnotationIntrospector: org.eclipse.yasson.internal.model.JsonbCreator getCreator(java.lang.reflect.Constructor[])>(v);
label:
return v;
}
org.eclipse.yasson.internal.model.JsonbCreator createJsonbCreator(java.lang.reflect.Executable, org.eclipse.yasson.internal.model.JsonbCreator, java.lang.Class, jakarta.json.bind.config.PropertyNamingStrategy)
{
java.lang.Object[] v;
java.lang.reflect.Parameter[] v;
org.eclipse.yasson.internal.model.CreatorModel[] v;
org.eclipse.yasson.internal.properties.MessageKeys v;
java.lang.reflect.Parameter v;
int v, v, v;
jakarta.json.bind.JsonbException v;
java.lang.reflect.Executable v;
java.lang.String v, v, v, v, v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
boolean v;
org.eclipse.yasson.internal.model.CreatorModel v, v;
org.eclipse.yasson.internal.model.JsonbCreator v, v;
java.lang.'annotation'.Annotation v;
java.lang.Class v;
org.eclipse.yasson.internal.JsonbContext v, v;
jakarta.json.bind.config.PropertyNamingStrategy v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: java.lang.reflect.Executable;
v := @parameter: org.eclipse.yasson.internal.model.JsonbCreator;
v := @parameter: java.lang.Class;
v := @parameter: jakarta.json.bind.config.PropertyNamingStrategy;
if v == null goto label;
v = new jakarta.json.bind.JsonbException;
v = <org.eclipse.yasson.internal.properties.MessageKeys: org.eclipse.yasson.internal.properties.MessageKeys MULTIPLE_JSONB_CREATORS>;
v = newarray (java.lang.Object)[1];
v[0] = v;
v = staticinvoke <org.eclipse.yasson.internal.properties.Messages: java.lang.String getMessage(org.eclipse.yasson.internal.properties.MessageKeys,java.lang.Object[])>(v, v);
specialinvoke v.<jakarta.json.bind.JsonbException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<java.lang.reflect.Executable: java.lang.reflect.Parameter[] getParameters()>();
v = lengthof v;
v = newarray (org.eclipse.yasson.internal.model.CreatorModel)[v];
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<java.lang.reflect.Parameter: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Ljakarta/json/bind/annotation/JsonbProperty;");
if v == null goto label;
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbProperty: java.lang.String value()>();
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v != 0 goto label;
v = new org.eclipse.yasson.internal.model.CreatorModel;
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbProperty: java.lang.String value()>();
v = v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
specialinvoke v.<org.eclipse.yasson.internal.model.CreatorModel: void <init>(java.lang.String,java.lang.reflect.Parameter,java.lang.reflect.Executable,org.eclipse.yasson.internal.JsonbContext)>(v, v, v, v);
v[v] = v;
goto label;
label:
v = virtualinvoke v.<java.lang.reflect.Parameter: java.lang.String getName()>();
v = interfaceinvoke v.<jakarta.json.bind.config.PropertyNamingStrategy: java.lang.String translateName(java.lang.String)>(v);
v = new org.eclipse.yasson.internal.model.CreatorModel;
v = v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
specialinvoke v.<org.eclipse.yasson.internal.model.CreatorModel: void <init>(java.lang.String,java.lang.reflect.Parameter,java.lang.reflect.Executable,org.eclipse.yasson.internal.JsonbContext)>(v, v, v, v);
v[v] = v;
label:
v = v + 1;
goto label;
label:
v = new org.eclipse.yasson.internal.model.JsonbCreator;
specialinvoke v.<org.eclipse.yasson.internal.model.JsonbCreator: void <init>(java.lang.reflect.Executable,org.eclipse.yasson.internal.model.CreatorModel[])>(v, v);
return v;
}
public org.eclipse.yasson.internal.components.AdapterBinding getAdapterBinding(org.eclipse.yasson.internal.model.Property)
{
java.util.function.Supplier v;
java.lang.reflect.Type v;
java.util.Optional v, v;
org.eclipse.yasson.internal.components.AdapterBinding v;
java.lang.Object v;
org.eclipse.yasson.internal.model.Property v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.Property;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.util.Optional getAnnotationFromProperty(java.lang.Class,org.eclipse.yasson.internal.model.Property)>(class "Ljakarta/json/bind/annotation/JsonbTypeAdapter;", v);
v = staticinvoke <org.eclipse.yasson.internal.AnnotationIntrospector$lambda_getAdapterBinding_0__350: java.util.function.Supplier bootstrap$(org.eclipse.yasson.internal.AnnotationIntrospector,org.eclipse.yasson.internal.model.Property)>(v, v);
v = virtualinvoke v.<java.util.Optional: java.lang.Object orElseGet(java.util.function.Supplier)>(v);
if v != null goto label;
return null;
label:
v = virtualinvoke v.<org.eclipse.yasson.internal.model.Property: java.lang.reflect.Type getPropertyType()>();
v = staticinvoke <org.eclipse.yasson.internal.ReflectionUtils: java.util.Optional getOptionalRawType(java.lang.reflect.Type)>(v);
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.components.AdapterBinding getAdapterBindingFromAnnotation(jakarta.json.bind.'annotation'.JsonbTypeAdapter,java.util.Optional)>(v, v);
return v;
}
public org.eclipse.yasson.internal.components.AdapterBinding getAdapterBinding(org.eclipse.yasson.internal.model.JsonbAnnotatedElement)
{
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v;
java.lang.'annotation'.Annotation v;
java.util.Optional v;
org.eclipse.yasson.internal.components.AdapterBinding v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
java.lang.reflect.AnnotatedElement v, v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.JsonbAnnotatedElement;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: java.lang.reflect.AnnotatedElement getElement()>();
v = virtualinvoke v.<java.lang.Class: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Ljakarta/json/bind/annotation/JsonbTypeAdapter;");
if v != null goto label;
return null;
label:
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: java.lang.reflect.AnnotatedElement getElement()>();
v = staticinvoke <java.util.Optional: java.util.Optional ofNullable(java.lang.Object)>(v);
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.components.AdapterBinding getAdapterBindingFromAnnotation(jakarta.json.bind.'annotation'.JsonbTypeAdapter,java.util.Optional)>(v, v);
return v;
}
private org.eclipse.yasson.internal.components.AdapterBinding getAdapterBindingFromAnnotation(jakarta.json.bind.'annotation'.JsonbTypeAdapter, java.util.Optional)
{
java.lang.Object[] v;
jakarta.json.bind.'annotation'.JsonbTypeAdapter v;
org.eclipse.yasson.internal.properties.MessageKeys v;
jakarta.json.bind.JsonbException v;
org.eclipse.yasson.internal.components.AdapterBinding v;
java.lang.String v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
boolean v, v;
java.lang.reflect.Type v, v;
java.util.Optional v;
java.lang.Class v, v;
java.lang.Object v, v;
org.eclipse.yasson.internal.JsonbContext v;
org.eclipse.yasson.internal.ComponentMatcher v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: jakarta.json.bind.'annotation'.JsonbTypeAdapter;
v := @parameter: java.util.Optional;
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbTypeAdapter: java.lang.Class value()>();
v = v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.ComponentMatcher getComponentMatcher()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.ComponentMatcher: org.eclipse.yasson.internal.components.AdapterBinding introspectAdapterBinding(java.lang.Class,jakarta.json.bind.adapter.JsonbAdapter)>(v, null);
v = virtualinvoke v.<java.util.Optional: boolean isPresent()>();
if v == 0 goto label;
v = virtualinvoke v.<org.eclipse.yasson.internal.components.AdapterBinding: java.lang.reflect.Type getBindingType()>();
v = staticinvoke <org.eclipse.yasson.internal.ReflectionUtils: java.lang.Class getRawType(java.lang.reflect.Type)>(v);
v = virtualinvoke v.<java.util.Optional: java.lang.Object get()>();
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
v = new jakarta.json.bind.JsonbException;
v = <org.eclipse.yasson.internal.properties.MessageKeys: org.eclipse.yasson.internal.properties.MessageKeys ADAPTER_INCOMPATIBLE>;
v = newarray (java.lang.Object)[2];
v = virtualinvoke v.<org.eclipse.yasson.internal.components.AdapterBinding: java.lang.reflect.Type getBindingType()>();
v[0] = v;
v = virtualinvoke v.<java.util.Optional: java.lang.Object get()>();
v[1] = v;
v = staticinvoke <org.eclipse.yasson.internal.properties.Messages: java.lang.String getMessage(org.eclipse.yasson.internal.properties.MessageKeys,java.lang.Object[])>(v, v);
specialinvoke v.<jakarta.json.bind.JsonbException: void <init>(java.lang.String)>(v);
throw v;
label:
return v;
}
public org.eclipse.yasson.internal.components.DeserializerBinding getDeserializerBinding(org.eclipse.yasson.internal.model.Property)
{
java.util.function.Supplier v;
java.util.Optional v;
java.lang.Class v;
java.lang.Object v;
org.eclipse.yasson.internal.components.DeserializerBinding v;
org.eclipse.yasson.internal.JsonbContext v;
org.eclipse.yasson.internal.model.Property v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
org.eclipse.yasson.internal.ComponentMatcher v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.Property;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.util.Optional getAnnotationFromProperty(java.lang.Class,org.eclipse.yasson.internal.model.Property)>(class "Ljakarta/json/bind/annotation/JsonbTypeDeserializer;", v);
v = staticinvoke <org.eclipse.yasson.internal.AnnotationIntrospector$lambda_getDeserializerBinding_1__351: java.util.function.Supplier bootstrap$(org.eclipse.yasson.internal.AnnotationIntrospector,org.eclipse.yasson.internal.model.Property)>(v, v);
v = virtualinvoke v.<java.util.Optional: java.lang.Object orElseGet(java.util.function.Supplier)>(v);
if v != null goto label;
return null;
label:
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbTypeDeserializer: java.lang.Class value()>();
v = v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.ComponentMatcher getComponentMatcher()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.ComponentMatcher: org.eclipse.yasson.internal.components.DeserializerBinding introspectDeserializerBinding(java.lang.Class,jakarta.json.bind.serializer.JsonbDeserializer)>(v, null);
return v;
}
public org.eclipse.yasson.internal.components.DeserializerBinding getDeserializerBinding(java.lang.reflect.Parameter)
{
java.util.function.Supplier v;
java.lang.reflect.Parameter v;
java.lang.'annotation'.Annotation v;
java.util.Optional v;
java.lang.Class v;
java.lang.Object v;
org.eclipse.yasson.internal.components.DeserializerBinding v;
org.eclipse.yasson.internal.JsonbContext v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
org.eclipse.yasson.internal.ComponentMatcher v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: java.lang.reflect.Parameter;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.reflect.Parameter: java.lang.'annotation'.Annotation getDeclaredAnnotation(java.lang.Class)>(class "Ljakarta/json/bind/annotation/JsonbTypeDeserializer;");
v = staticinvoke <java.util.Optional: java.util.Optional ofNullable(java.lang.Object)>(v);
v = staticinvoke <org.eclipse.yasson.internal.AnnotationIntrospector$lambda_getDeserializerBinding_2__352: java.util.function.Supplier bootstrap$(org.eclipse.yasson.internal.AnnotationIntrospector,java.lang.reflect.Parameter)>(v, v);
v = virtualinvoke v.<java.util.Optional: java.lang.Object orElseGet(java.util.function.Supplier)>(v);
if v != null goto label;
return null;
label:
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbTypeDeserializer: java.lang.Class value()>();
v = v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.ComponentMatcher getComponentMatcher()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.ComponentMatcher: org.eclipse.yasson.internal.components.DeserializerBinding introspectDeserializerBinding(java.lang.Class,jakarta.json.bind.serializer.JsonbDeserializer)>(v, null);
return v;
}
public org.eclipse.yasson.internal.components.AdapterBinding getAdapterBinding(java.lang.reflect.Parameter)
{
java.util.function.Supplier v;
java.lang.reflect.Type v;
java.lang.reflect.Parameter v;
java.lang.'annotation'.Annotation v;
java.util.Optional v, v;
org.eclipse.yasson.internal.components.AdapterBinding v;
java.lang.Object v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: java.lang.reflect.Parameter;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.reflect.Parameter: java.lang.'annotation'.Annotation getDeclaredAnnotation(java.lang.Class)>(class "Ljakarta/json/bind/annotation/JsonbTypeAdapter;");
v = staticinvoke <java.util.Optional: java.util.Optional ofNullable(java.lang.Object)>(v);
v = staticinvoke <org.eclipse.yasson.internal.AnnotationIntrospector$lambda_getAdapterBinding_3__353: java.util.function.Supplier bootstrap$(org.eclipse.yasson.internal.AnnotationIntrospector,java.lang.reflect.Parameter)>(v, v);
v = virtualinvoke v.<java.util.Optional: java.lang.Object orElseGet(java.util.function.Supplier)>(v);
if v != null goto label;
return null;
label:
v = virtualinvoke v.<java.lang.reflect.Parameter: java.lang.reflect.Type getParameterizedType()>();
v = staticinvoke <org.eclipse.yasson.internal.ReflectionUtils: java.util.Optional getOptionalRawType(java.lang.reflect.Type)>(v);
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.components.AdapterBinding getAdapterBindingFromAnnotation(jakarta.json.bind.'annotation'.JsonbTypeAdapter,java.util.Optional)>(v, v);
return v;
}
private java.lang.'annotation'.Annotation getAnnotationFromParameterType(java.lang.reflect.Parameter, java.lang.Class)
{
java.util.function.Function v;
java.lang.reflect.Type v;
java.lang.reflect.Parameter v;
java.util.Optional v, v;
java.lang.Class v;
java.lang.Object v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: java.lang.reflect.Parameter;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.reflect.Parameter: java.lang.reflect.Type getParameterizedType()>();
v = staticinvoke <org.eclipse.yasson.internal.ReflectionUtils: java.util.Optional getOptionalRawType(java.lang.reflect.Type)>(v);
v = staticinvoke <org.eclipse.yasson.internal.AnnotationIntrospector$lambda_getAnnotationFromParameterType_4__354: java.util.function.Function bootstrap$(org.eclipse.yasson.internal.AnnotationIntrospector,java.lang.Class)>(v, v);
v = virtualinvoke v.<java.util.Optional: java.util.Optional map(java.util.function.Function)>(v);
v = virtualinvoke v.<java.util.Optional: java.lang.Object orElse(java.lang.Object)>(null);
return v;
}
public org.eclipse.yasson.internal.components.DeserializerBinding getDeserializerBinding(org.eclipse.yasson.internal.model.JsonbAnnotatedElement)
{
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v;
java.lang.'annotation'.Annotation v;
java.lang.Class v;
org.eclipse.yasson.internal.components.DeserializerBinding v;
org.eclipse.yasson.internal.JsonbContext v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
java.lang.reflect.AnnotatedElement v;
org.eclipse.yasson.internal.ComponentMatcher v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.JsonbAnnotatedElement;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: java.lang.reflect.AnnotatedElement getElement()>();
v = virtualinvoke v.<java.lang.Class: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Ljakarta/json/bind/annotation/JsonbTypeDeserializer;");
if v != null goto label;
return null;
label:
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbTypeDeserializer: java.lang.Class value()>();
v = v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.ComponentMatcher getComponentMatcher()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.ComponentMatcher: org.eclipse.yasson.internal.components.DeserializerBinding introspectDeserializerBinding(java.lang.Class,jakarta.json.bind.serializer.JsonbDeserializer)>(v, null);
return v;
}
public org.eclipse.yasson.internal.components.SerializerBinding getSerializerBinding(org.eclipse.yasson.internal.model.Property)
{
java.util.function.Supplier v;
org.eclipse.yasson.internal.components.SerializerBinding v;
java.util.Optional v;
java.lang.Class v;
java.lang.Object v;
org.eclipse.yasson.internal.JsonbContext v;
org.eclipse.yasson.internal.model.Property v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
org.eclipse.yasson.internal.ComponentMatcher v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.Property;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.util.Optional getAnnotationFromProperty(java.lang.Class,org.eclipse.yasson.internal.model.Property)>(class "Ljakarta/json/bind/annotation/JsonbTypeSerializer;", v);
v = staticinvoke <org.eclipse.yasson.internal.AnnotationIntrospector$lambda_getSerializerBinding_5__355: java.util.function.Supplier bootstrap$(org.eclipse.yasson.internal.AnnotationIntrospector,org.eclipse.yasson.internal.model.Property)>(v, v);
v = virtualinvoke v.<java.util.Optional: java.lang.Object orElseGet(java.util.function.Supplier)>(v);
if v != null goto label;
return null;
label:
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbTypeSerializer: java.lang.Class value()>();
v = v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.ComponentMatcher getComponentMatcher()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.ComponentMatcher: org.eclipse.yasson.internal.components.SerializerBinding introspectSerializerBinding(java.lang.Class,jakarta.json.bind.serializer.JsonbSerializer)>(v, null);
return v;
}
public org.eclipse.yasson.internal.components.SerializerBinding getSerializerBinding(org.eclipse.yasson.internal.model.JsonbAnnotatedElement)
{
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v;
org.eclipse.yasson.internal.components.SerializerBinding v;
java.lang.'annotation'.Annotation v;
java.lang.Class v;
org.eclipse.yasson.internal.JsonbContext v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
java.lang.reflect.AnnotatedElement v;
org.eclipse.yasson.internal.ComponentMatcher v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.JsonbAnnotatedElement;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: java.lang.reflect.AnnotatedElement getElement()>();
v = virtualinvoke v.<java.lang.Class: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Ljakarta/json/bind/annotation/JsonbTypeSerializer;");
if v != null goto label;
return null;
label:
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbTypeSerializer: java.lang.Class value()>();
v = v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.ComponentMatcher getComponentMatcher()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.ComponentMatcher: org.eclipse.yasson.internal.components.SerializerBinding introspectSerializerBinding(java.lang.Class,jakarta.json.bind.serializer.JsonbSerializer)>(v, null);
return v;
}
private java.lang.'annotation'.Annotation getAnnotationFromPropertyType(org.eclipse.yasson.internal.model.Property, java.lang.Class)
{
java.lang.'annotation'.Annotation[] v;
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v;
java.lang.reflect.Type v;
java.lang.'annotation'.Annotation v;
java.util.Optional v;
java.lang.Class v;
java.lang.Object v;
org.eclipse.yasson.internal.model.Property v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
boolean v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.Property;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.Property: java.lang.reflect.Type getPropertyType()>();
v = staticinvoke <org.eclipse.yasson.internal.ReflectionUtils: java.util.Optional getOptionalRawType(java.lang.reflect.Type)>(v);
v = virtualinvoke v.<java.util.Optional: boolean isPresent()>();
if v != 0 goto label;
return null;
label:
v = virtualinvoke v.<java.util.Optional: java.lang.Object get()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.model.JsonbAnnotatedElement collectAnnotations(java.lang.Class)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: java.lang.'annotation'.Annotation[] getAnnotations()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.'annotation'.Annotation findAnnotation(java.lang.'annotation'.Annotation[],java.lang.Class)>(v, v);
return v;
}
public java.util.Optional isPropertyNillable(org.eclipse.yasson.internal.model.Property)
{
java.util.function.Function v, v;
java.util.Optional v, v, v, v;
org.eclipse.yasson.internal.model.Property v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
boolean v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.Property;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.util.Optional getAnnotationFromProperty(java.lang.Class,org.eclipse.yasson.internal.model.Property)>(class "Ljakarta/json/bind/annotation/JsonbNillable;", v);
v = virtualinvoke v.<java.util.Optional: boolean isPresent()>();
if v == 0 goto label;
v = staticinvoke <org.eclipse.yasson.internal.AnnotationIntrospector$value__357: java.util.function.Function bootstrap$()>();
v = virtualinvoke v.<java.util.Optional: java.util.Optional map(java.util.function.Function)>(v);
return v;
label:
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.util.Optional getAnnotationFromProperty(java.lang.Class,org.eclipse.yasson.internal.model.Property)>(class "Ljakarta/json/bind/annotation/JsonbProperty;", v);
v = staticinvoke <org.eclipse.yasson.internal.AnnotationIntrospector$nillable__356: java.util.function.Function bootstrap$()>();
v = virtualinvoke v.<java.util.Optional: java.util.Optional map(java.util.function.Function)>(v);
return v;
}
public boolean isClassNillable(org.eclipse.yasson.internal.model.JsonbAnnotatedElement)
{
java.lang.'annotation'.Annotation[] v;
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v;
org.eclipse.yasson.internal.JsonbConfigProperties v;
java.lang.'annotation'.Annotation v;
org.eclipse.yasson.internal.JsonbContext v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
boolean v, v;
java.lang.reflect.AnnotatedElement v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.JsonbAnnotatedElement;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: java.lang.'annotation'.Annotation[] getAnnotations()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.'annotation'.Annotation findAnnotation(java.lang.'annotation'.Annotation[],java.lang.Class)>(v, class "Ljakarta/json/bind/annotation/JsonbNillable;");
if v == null goto label;
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbNillable: boolean value()>();
return v;
label:
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: java.lang.reflect.AnnotatedElement getElement()>();
if v == class "Ljava/util/Optional;" goto label;
if v == class "Ljava/util/OptionalDouble;" goto label;
if v == class "Ljava/util/OptionalInt;" goto label;
if v != class "Ljava/util/OptionalLong;" goto label;
label:
return 1;
label:
v = v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.JsonbConfigProperties getConfigProperties()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbConfigProperties: boolean getConfigNullable()>();
return v;
}
public java.lang.String[] getPropertyOrder(org.eclipse.yasson.internal.model.JsonbAnnotatedElement)
{
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v;
java.lang.'annotation'.Annotation v;
java.lang.String[] v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
java.lang.reflect.AnnotatedElement v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.JsonbAnnotatedElement;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: java.lang.reflect.AnnotatedElement getElement()>();
v = virtualinvoke v.<java.lang.Class: java.lang.'annotation'.Annotation getAnnotation(java.lang.Class)>(class "Ljakarta/json/bind/annotation/JsonbPropertyOrder;");
if v == null goto label;
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbPropertyOrder: java.lang.String[] value()>();
goto label;
label:
v = null;
label:
return v;
}
public java.util.EnumSet getJsonbTransientCategorized(org.eclipse.yasson.internal.model.Property)
{
java.util.Map v;
int v;
java.util.Set v;
org.eclipse.yasson.internal.model.Property v;
java.util.EnumSet v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.Property;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <java.util.EnumSet: java.util.EnumSet noneOf(java.lang.Class)>(class "Lorg/eclipse/yasson/internal/model/AnnotationTarget;");
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.util.Map getAnnotationFromPropertyCategorized(java.lang.Class,org.eclipse.yasson.internal.model.Property)>(class "Ljakarta/json/bind/annotation/JsonbTransient;", v);
v = interfaceinvoke v.<java.util.Map: int size()>();
if v <= 0 goto label;
v = interfaceinvoke v.<java.util.Map: java.util.Set keySet()>();
virtualinvoke v.<java.util.EnumSet: boolean addAll(java.util.Collection)>(v);
return v;
label:
return v;
}
public java.util.Map getJsonbDateFormatCategorized(org.eclipse.yasson.internal.model.Property)
{
org.eclipse.yasson.internal.JsonbDateFormatter v;
java.util.HashMap v, v;
java.lang.'annotation'.Annotation[] v;
java.util.Map v;
int v;
java.util.function.BiConsumer v;
java.lang.String v, v;
org.eclipse.yasson.internal.model.Property v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
boolean v, v, v, v;
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v;
org.eclipse.yasson.internal.model.AnnotationTarget v;
java.lang.reflect.Type v;
java.lang.'annotation'.Annotation v;
java.util.Optional v;
java.lang.Class v, v, v;
java.lang.Object v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.Property;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.util.Map getAnnotationFromPropertyCategorized(java.lang.Class,org.eclipse.yasson.internal.model.Property)>(class "Ljakarta/json/bind/annotation/JsonbDateFormat;", v);
v = interfaceinvoke v.<java.util.Map: int size()>();
if v == 0 goto label;
v = staticinvoke <org.eclipse.yasson.internal.AnnotationIntrospector$lambda_getJsonbDateFormatCategorized_6__358: java.util.function.BiConsumer bootstrap$(org.eclipse.yasson.internal.AnnotationIntrospector,java.util.Map,org.eclipse.yasson.internal.model.Property)>(v, v, v);
interfaceinvoke v.<java.util.Map: void forEach(java.util.function.BiConsumer)>(v);
label:
v = virtualinvoke v.<org.eclipse.yasson.internal.model.Property: java.lang.reflect.Type getPropertyType()>();
v = staticinvoke <org.eclipse.yasson.internal.ReflectionUtils: java.util.Optional getOptionalRawType(java.lang.reflect.Type)>(v);
v = virtualinvoke v.<java.util.Optional: boolean isPresent()>();
if v == 0 goto label;
v = virtualinvoke v.<java.util.Optional: java.lang.Object get()>();
v = class "Ljava/util/Date;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
v = class "Ljava/util/Calendar;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
v = class "Ljava/time/temporal/TemporalAccessor;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
return v;
label:
v = virtualinvoke v.<org.eclipse.yasson.internal.model.Property: org.eclipse.yasson.internal.model.JsonbAnnotatedElement getDeclaringClassElement()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: java.lang.'annotation'.Annotation[] getAnnotations()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.'annotation'.Annotation findAnnotation(java.lang.'annotation'.Annotation[],java.lang.Class)>(v, class "Ljakarta/json/bind/annotation/JsonbDateFormat;");
if v == null goto label;
v = <org.eclipse.yasson.internal.model.AnnotationTarget: org.eclipse.yasson.internal.model.AnnotationTarget CLASS>;
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbDateFormat: java.lang.String value()>();
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbDateFormat: java.lang.String locale()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.JsonbDateFormatter createJsonbDateFormatter(java.lang.String,java.lang.String,org.eclipse.yasson.internal.model.Property)>(v, v, v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
return v;
}
public org.eclipse.yasson.internal.JsonbDateFormatter getJsonbDateFormat(org.eclipse.yasson.internal.model.JsonbAnnotatedElement)
{
org.eclipse.yasson.internal.JsonbDateFormatter v, v;
java.lang.'annotation'.Annotation[] v;
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v;
org.eclipse.yasson.internal.JsonbConfigProperties v;
java.lang.'annotation'.Annotation v;
java.lang.String v, v;
org.eclipse.yasson.internal.JsonbContext v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.JsonbAnnotatedElement;
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: java.lang.'annotation'.Annotation[] getAnnotations()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.'annotation'.Annotation findAnnotation(java.lang.'annotation'.Annotation[],java.lang.Class)>(v, class "Ljakarta/json/bind/annotation/JsonbDateFormat;");
if v != null goto label;
v = v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.JsonbConfigProperties getConfigProperties()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbConfigProperties: org.eclipse.yasson.internal.JsonbDateFormatter getConfigDateFormatter()>();
return v;
label:
v = new org.eclipse.yasson.internal.JsonbDateFormatter;
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbDateFormat: java.lang.String value()>();
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbDateFormat: java.lang.String locale()>();
specialinvoke v.<org.eclipse.yasson.internal.JsonbDateFormatter: void <init>(java.lang.String,java.lang.String)>(v, v);
return v;
}
public org.eclipse.yasson.internal.JsonbNumberFormatter getJsonbNumberFormat(org.eclipse.yasson.internal.model.JsonbAnnotatedElement)
{
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v;
java.lang.'annotation'.Annotation v;
org.eclipse.yasson.internal.JsonbNumberFormatter v;
java.lang.String v, v;
java.lang.'annotation'.Annotation[] v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.JsonbAnnotatedElement;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: java.lang.'annotation'.Annotation[] getAnnotations()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.'annotation'.Annotation findAnnotation(java.lang.'annotation'.Annotation[],java.lang.Class)>(v, class "Ljakarta/json/bind/annotation/JsonbNumberFormat;");
if v != null goto label;
return null;
label:
v = new org.eclipse.yasson.internal.JsonbNumberFormatter;
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbNumberFormat: java.lang.String value()>();
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbNumberFormat: java.lang.String locale()>();
specialinvoke v.<org.eclipse.yasson.internal.JsonbNumberFormatter: void <init>(java.lang.String,java.lang.String)>(v, v);
return v;
}
public java.util.Map getJsonNumberFormatter(org.eclipse.yasson.internal.model.Property)
{
java.util.HashMap v;
java.lang.'annotation'.Annotation[] v;
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v;
org.eclipse.yasson.internal.model.AnnotationTarget v;
java.util.Map v;
java.lang.'annotation'.Annotation v;
java.util.function.BiConsumer v;
org.eclipse.yasson.internal.JsonbNumberFormatter v;
java.lang.String v, v;
org.eclipse.yasson.internal.model.Property v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.Property;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.util.Map getAnnotationFromPropertyCategorized(java.lang.Class,org.eclipse.yasson.internal.model.Property)>(class "Ljakarta/json/bind/annotation/JsonbNumberFormat;", v);
v = staticinvoke <org.eclipse.yasson.internal.AnnotationIntrospector$lambda_getJsonNumberFormatter_7__359: java.util.function.BiConsumer bootstrap$(java.util.Map)>(v);
interfaceinvoke v.<java.util.Map: void forEach(java.util.function.BiConsumer)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.Property: org.eclipse.yasson.internal.model.JsonbAnnotatedElement getDeclaringClassElement()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: java.lang.'annotation'.Annotation[] getAnnotations()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.'annotation'.Annotation findAnnotation(java.lang.'annotation'.Annotation[],java.lang.Class)>(v, class "Ljakarta/json/bind/annotation/JsonbNumberFormat;");
if v == null goto label;
v = <org.eclipse.yasson.internal.model.AnnotationTarget: org.eclipse.yasson.internal.model.AnnotationTarget CLASS>;
v = new org.eclipse.yasson.internal.JsonbNumberFormatter;
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbNumberFormat: java.lang.String value()>();
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbNumberFormat: java.lang.String locale()>();
specialinvoke v.<org.eclipse.yasson.internal.JsonbNumberFormatter: void <init>(java.lang.String,java.lang.String)>(v, v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
return v;
}
public org.eclipse.yasson.internal.JsonbNumberFormatter getConstructorNumberFormatter(org.eclipse.yasson.internal.model.JsonbAnnotatedElement)
{
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v;
java.util.Optional v, v;
java.lang.Object v;
java.util.function.Function v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.JsonbAnnotatedElement;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: java.util.Optional getAnnotation(java.lang.Class)>(class "Ljakarta/json/bind/annotation/JsonbNumberFormat;");
v = staticinvoke <org.eclipse.yasson.internal.AnnotationIntrospector$lambda_getConstructorNumberFormatter_8__360: java.util.function.Function bootstrap$()>();
v = virtualinvoke v.<java.util.Optional: java.util.Optional map(java.util.function.Function)>(v);
v = virtualinvoke v.<java.util.Optional: java.lang.Object orElse(java.lang.Object)>(null);
return v;
}
public org.eclipse.yasson.internal.JsonbDateFormatter getConstructorDateFormatter(org.eclipse.yasson.internal.model.JsonbAnnotatedElement)
{
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v;
java.util.Optional v, v;
java.lang.Object v;
java.util.function.Function v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.JsonbAnnotatedElement;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: java.util.Optional getAnnotation(java.lang.Class)>(class "Ljakarta/json/bind/annotation/JsonbDateFormat;");
v = staticinvoke <org.eclipse.yasson.internal.AnnotationIntrospector$lambda_getConstructorDateFormatter_9__361: java.util.function.Function bootstrap$()>();
v = virtualinvoke v.<java.util.Optional: java.util.Optional map(java.util.function.Function)>(v);
v = virtualinvoke v.<java.util.Optional: java.lang.Object orElse(java.lang.Object)>(null);
return v;
}
private org.eclipse.yasson.internal.JsonbDateFormatter createJsonbDateFormatter(java.lang.String, java.lang.String, org.eclipse.yasson.internal.model.Property)
{
java.lang.IllegalStateException v;
org.eclipse.yasson.internal.JsonbDateFormatter v, v;
java.util.Locale v;
boolean v, v, v, v, v, v;
java.lang.reflect.Type v;
org.eclipse.yasson.internal.JsonbConfigProperties v;
java.util.Optional v;
org.eclipse.yasson.internal.JsonbContext v;
java.time.format.DateTimeFormatterBuilder v;
java.time.temporal.ChronoField v, v, v;
java.lang.Object[] v;
org.eclipse.yasson.internal.properties.MessageKeys v;
java.lang.String v, v, v, v, v;
org.eclipse.yasson.internal.model.Property v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
java.time.format.DateTimeFormatter v;
java.lang.Class v, v, v;
java.lang.Object v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: org.eclipse.yasson.internal.model.Property;
v = "##time-in-millis";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = "##default";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
label:
v = new org.eclipse.yasson.internal.JsonbDateFormatter;
specialinvoke v.<org.eclipse.yasson.internal.JsonbDateFormatter: void <init>(java.lang.String,java.lang.String)>(v, v);
return v;
label:
v = virtualinvoke v.<org.eclipse.yasson.internal.model.Property: java.lang.reflect.Type getPropertyType()>();
v = staticinvoke <org.eclipse.yasson.internal.ReflectionUtils: java.util.Optional getOptionalRawType(java.lang.reflect.Type)>(v);
v = virtualinvoke v.<java.util.Optional: java.lang.Object orElse(java.lang.Object)>(null);
if v == null goto label;
v = class "Ljava/time/temporal/TemporalAccessor;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
v = class "Ljava/util/Date;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
v = class "Ljava/util/Calendar;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
v = new java.lang.IllegalStateException;
v = <org.eclipse.yasson.internal.properties.MessageKeys: org.eclipse.yasson.internal.properties.MessageKeys UNSUPPORTED_DATE_TYPE>;
v = newarray (java.lang.Object)[1];
v[0] = v;
v = staticinvoke <org.eclipse.yasson.internal.properties.Messages: java.lang.String getMessage(org.eclipse.yasson.internal.properties.MessageKeys,java.lang.Object[])>(v, v);
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>(v);
throw v;
label:
v = new java.time.format.DateTimeFormatterBuilder;
specialinvoke v.<java.time.format.DateTimeFormatterBuilder: void <init>()>();
virtualinvoke v.<java.time.format.DateTimeFormatterBuilder: java.time.format.DateTimeFormatterBuilder appendPattern(java.lang.String)>(v);
v = v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.JsonbConfigProperties getConfigProperties()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbConfigProperties: boolean isZeroTimeDefaulting()>();
if v == 0 goto label;
v = <java.time.temporal.ChronoField: java.time.temporal.ChronoField SECOND_OF_MINUTE>;
virtualinvoke v.<java.time.format.DateTimeFormatterBuilder: java.time.format.DateTimeFormatterBuilder parseDefaulting(java.time.temporal.TemporalField,long)>(v, 0L);
v = <java.time.temporal.ChronoField: java.time.temporal.ChronoField MINUTE_OF_HOUR>;
virtualinvoke v.<java.time.format.DateTimeFormatterBuilder: java.time.format.DateTimeFormatterBuilder parseDefaulting(java.time.temporal.TemporalField,long)>(v, 0L);
v = <java.time.temporal.ChronoField: java.time.temporal.ChronoField HOUR_OF_DAY>;
virtualinvoke v.<java.time.format.DateTimeFormatterBuilder: java.time.format.DateTimeFormatterBuilder parseDefaulting(java.time.temporal.TemporalField,long)>(v, 0L);
label:
v = staticinvoke <java.util.Locale: java.util.Locale forLanguageTag(java.lang.String)>(v);
v = virtualinvoke v.<java.time.format.DateTimeFormatterBuilder: java.time.format.DateTimeFormatter toFormatter(java.util.Locale)>(v);
v = new org.eclipse.yasson.internal.JsonbDateFormatter;
specialinvoke v.<org.eclipse.yasson.internal.JsonbDateFormatter: void <init>(java.time.format.DateTimeFormatter,java.lang.String,java.lang.String)>(v, v, v);
return v;
}
public jakarta.json.bind.config.PropertyVisibilityStrategy getPropertyVisibilityStrategy(java.lang.Class)
{
java.lang.Package v, v;
jakarta.json.bind.config.PropertyVisibilityStrategy v;
java.lang.'annotation'.Annotation[] v, v;
java.lang.reflect.Constructor v;
org.eclipse.yasson.internal.JsonbConfigProperties v;
java.lang.'annotation'.Annotation v;
java.lang.Class v, v;
java.lang.Object v;
org.eclipse.yasson.internal.JsonbContext v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: java.lang.'annotation'.Annotation[] getDeclaredAnnotations()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.'annotation'.Annotation findAnnotation(java.lang.'annotation'.Annotation[],java.lang.Class)>(v, class "Ljakarta/json/bind/annotation/JsonbVisibility;");
if v != null goto label;
v = virtualinvoke v.<java.lang.Class: java.lang.Package getPackage()>();
if v == null goto label;
v = virtualinvoke v.<java.lang.Class: java.lang.Package getPackage()>();
v = virtualinvoke v.<java.lang.Package: java.lang.'annotation'.Annotation[] getDeclaredAnnotations()>();
specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.'annotation'.Annotation findAnnotation(java.lang.'annotation'.Annotation[],java.lang.Class)>(v, class "Ljakarta/json/bind/annotation/JsonbVisibility;");
label:
if v == null goto label;
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbVisibility: java.lang.Class value()>();
v = staticinvoke <org.eclipse.yasson.internal.ReflectionUtils: java.lang.reflect.Constructor getDefaultConstructor(java.lang.Class,boolean)>(v, 1);
v = staticinvoke <org.eclipse.yasson.internal.ReflectionUtils: java.lang.Object createNoArgConstructorInstance(java.lang.reflect.Constructor)>(v);
return v;
label:
v = v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.JsonbConfigProperties getConfigProperties()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbConfigProperties: jakarta.json.bind.config.PropertyVisibilityStrategy getPropertyVisibilityStrategy()>();
return v;
}
private java.util.Optional getAnnotationFromProperty(java.lang.Class, org.eclipse.yasson.internal.model.Property)
{
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v, v, v;
java.lang.'annotation'.Annotation v, v, v;
java.util.Optional v, v, v, v;
java.lang.Class v;
org.eclipse.yasson.internal.model.Property v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: java.lang.Class;
v := @parameter: org.eclipse.yasson.internal.model.Property;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.Property: org.eclipse.yasson.internal.model.JsonbAnnotatedElement getFieldElement()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.'annotation'.Annotation getFieldAnnotation(java.lang.Class,org.eclipse.yasson.internal.model.JsonbAnnotatedElement)>(v, v);
if v == null goto label;
v = staticinvoke <java.util.Optional: java.util.Optional of(java.lang.Object)>(v);
return v;
label:
v = virtualinvoke v.<org.eclipse.yasson.internal.model.Property: org.eclipse.yasson.internal.model.JsonbAnnotatedElement getGetterElement()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.'annotation'.Annotation getMethodAnnotation(java.lang.Class,org.eclipse.yasson.internal.model.JsonbAnnotatedElement)>(v, v);
if v == null goto label;
v = staticinvoke <java.util.Optional: java.util.Optional of(java.lang.Object)>(v);
return v;
label:
v = virtualinvoke v.<org.eclipse.yasson.internal.model.Property: org.eclipse.yasson.internal.model.JsonbAnnotatedElement getSetterElement()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.'annotation'.Annotation getMethodAnnotation(java.lang.Class,org.eclipse.yasson.internal.model.JsonbAnnotatedElement)>(v, v);
if v == null goto label;
v = staticinvoke <java.util.Optional: java.util.Optional of(java.lang.Object)>(v);
return v;
label:
v = staticinvoke <java.util.Optional: java.util.Optional empty()>();
return v;
}
private java.util.Map getAnnotationFromPropertyCategorized(java.lang.Class, org.eclipse.yasson.internal.model.Property)
{
java.util.HashMap v;
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v, v, v;
org.eclipse.yasson.internal.model.AnnotationTarget v, v, v;
java.lang.'annotation'.Annotation v, v, v;
java.lang.Class v;
org.eclipse.yasson.internal.model.Property v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: java.lang.Class;
v := @parameter: org.eclipse.yasson.internal.model.Property;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.model.Property: org.eclipse.yasson.internal.model.JsonbAnnotatedElement getFieldElement()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.'annotation'.Annotation getFieldAnnotation(java.lang.Class,org.eclipse.yasson.internal.model.JsonbAnnotatedElement)>(v, v);
if v == null goto label;
v = <org.eclipse.yasson.internal.model.AnnotationTarget: org.eclipse.yasson.internal.model.AnnotationTarget PROPERTY>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
v = virtualinvoke v.<org.eclipse.yasson.internal.model.Property: org.eclipse.yasson.internal.model.JsonbAnnotatedElement getGetterElement()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.'annotation'.Annotation getMethodAnnotation(java.lang.Class,org.eclipse.yasson.internal.model.JsonbAnnotatedElement)>(v, v);
if v == null goto label;
v = <org.eclipse.yasson.internal.model.AnnotationTarget: org.eclipse.yasson.internal.model.AnnotationTarget GETTER>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
v = virtualinvoke v.<org.eclipse.yasson.internal.model.Property: org.eclipse.yasson.internal.model.JsonbAnnotatedElement getSetterElement()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.'annotation'.Annotation getMethodAnnotation(java.lang.Class,org.eclipse.yasson.internal.model.JsonbAnnotatedElement)>(v, v);
if v == null goto label;
v = <org.eclipse.yasson.internal.model.AnnotationTarget: org.eclipse.yasson.internal.model.AnnotationTarget SETTER>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
return v;
}
private java.lang.'annotation'.Annotation getFieldAnnotation(java.lang.Class, org.eclipse.yasson.internal.model.JsonbAnnotatedElement)
{
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v;
java.lang.'annotation'.Annotation v;
java.lang.Class v;
java.lang.'annotation'.Annotation[] v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: java.lang.Class;
v := @parameter: org.eclipse.yasson.internal.model.JsonbAnnotatedElement;
if v != null goto label;
return null;
label:
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: java.lang.'annotation'.Annotation[] getAnnotations()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.'annotation'.Annotation findAnnotation(java.lang.'annotation'.Annotation[],java.lang.Class)>(v, v);
return v;
}
private java.lang.'annotation'.Annotation findAnnotation(java.lang.'annotation'.Annotation[], java.lang.Class)
{
java.util.HashSet v;
java.lang.'annotation'.Annotation v;
java.lang.Class v;
java.lang.'annotation'.Annotation[] v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: java.lang.'annotation'.Annotation[];
v := @parameter: java.lang.Class;
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
v = staticinvoke <org.eclipse.yasson.internal.AnnotationFinder: java.lang.'annotation'.Annotation findAnnotation(java.lang.'annotation'.Annotation[],java.lang.Class,java.util.Set)>(v, v, v);
return v;
}
public void checkTransientIncompatible(org.eclipse.yasson.internal.model.JsonbAnnotatedElement)
{
java.lang.Object[] v;
java.util.Iterator v;
java.lang.'annotation'.Annotation[] v;
org.eclipse.yasson.internal.properties.MessageKeys v;
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v;
java.util.List v;
java.lang.'annotation'.Annotation v;
jakarta.json.bind.JsonbException v;
java.lang.Object v;
java.lang.String v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
boolean v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.JsonbAnnotatedElement;
if v != null goto label;
return;
label:
v = <org.eclipse.yasson.internal.AnnotationIntrospector: java.util.List TRANSIENT_INCOMPATIBLE>;
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.eclipse.yasson.internal.model.JsonbAnnotatedElement: java.lang.'annotation'.Annotation[] getAnnotations()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.'annotation'.Annotation findAnnotation(java.lang.'annotation'.Annotation[],java.lang.Class)>(v, v);
if v == null goto label;
v = new jakarta.json.bind.JsonbException;
v = <org.eclipse.yasson.internal.properties.MessageKeys: org.eclipse.yasson.internal.properties.MessageKeys JSONB_TRANSIENT_WITH_OTHER_ANNOTATIONS>;
v = newarray (java.lang.Object)[0];
v = staticinvoke <org.eclipse.yasson.internal.properties.Messages: java.lang.String getMessage(org.eclipse.yasson.internal.properties.MessageKeys,java.lang.Object[])>(v, v);
specialinvoke v.<jakarta.json.bind.JsonbException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
}
private java.lang.'annotation'.Annotation getMethodAnnotation(java.lang.Class, org.eclipse.yasson.internal.model.JsonbAnnotatedElement)
{
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v;
java.lang.'annotation'.Annotation v;
java.lang.Class v;
java.lang.'annotation'.Annotation[] v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: java.lang.Class;
v := @parameter: org.eclipse.yasson.internal.model.JsonbAnnotatedElement;
if v != null goto label;
return null;
label:
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: java.lang.'annotation'.Annotation[] getAnnotations()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.'annotation'.Annotation findAnnotation(java.lang.'annotation'.Annotation[],java.lang.Class)>(v, v);
return v;
}
private void collectFromInterfaces(java.lang.Class, java.lang.Class, java.util.Map)
{
java.lang.Class[] v;
java.lang.'annotation'.Annotation[] v;
java.util.Map v;
int v, v;
java.lang.'annotation'.Annotation v;
java.lang.Class v, v, v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.Class;
v := @parameter: java.util.Map;
v = virtualinvoke v.<java.lang.Class: java.lang.Class[] getInterfaces()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<java.lang.Class: java.lang.'annotation'.Annotation[] getDeclaredAnnotations()>();
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.'annotation'.Annotation findAnnotation(java.lang.'annotation'.Annotation[],java.lang.Class)>(v, v);
if v == null goto label;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: void collectFromInterfaces(java.lang.Class,java.lang.Class,java.util.Map)>(v, v, v);
v = v + 1;
goto label;
label:
return;
}
public java.util.Set collectInterfaces(java.lang.Class)
{
java.lang.Class[] v, v;
java.util.List v, v;
java.lang.Class v;
java.lang.Object v;
java.util.LinkedList v;
java.util.LinkedHashSet v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: java.lang.Class;
v = new java.util.LinkedHashSet;
specialinvoke v.<java.util.LinkedHashSet: void <init>()>();
v = new java.util.LinkedList;
v = virtualinvoke v.<java.lang.Class: java.lang.Class[] getInterfaces()>();
v = staticinvoke <java.util.Arrays: java.util.List asList(java.lang.Object[])>(v);
specialinvoke v.<java.util.LinkedList: void <init>(java.util.Collection)>(v);
label:
v = interfaceinvoke v.<java.util.Queue: java.lang.Object poll()>();
if v == null goto label;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
v = virtualinvoke v.<java.lang.Class: java.lang.Class[] getInterfaces()>();
v = staticinvoke <java.util.Arrays: java.util.List asList(java.lang.Object[])>(v);
interfaceinvoke v.<java.util.Queue: boolean addAll(java.util.Collection)>(v);
goto label;
label:
return v;
}
public org.eclipse.yasson.internal.model.customization.ClassCustomization introspectCustomization(org.eclipse.yasson.internal.model.JsonbAnnotatedElement, org.eclipse.yasson.internal.model.customization.ClassCustomization, jakarta.json.bind.config.PropertyNamingStrategy)
{
org.eclipse.yasson.internal.JsonbDateFormatter v;
java.lang.String[] v;
jakarta.json.bind.config.PropertyVisibilityStrategy v;
org.eclipse.yasson.internal.model.customization.ClassCustomization v, v;
org.eclipse.yasson.internal.model.customization.ClassCustomization$Builder v, v, v, v, v, v, v;
org.eclipse.yasson.internal.JsonbNumberFormatter v;
org.eclipse.yasson.internal.components.AdapterBinding v;
org.eclipse.yasson.internal.components.DeserializerBinding v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
boolean v;
org.eclipse.yasson.internal.model.customization.CustomizationBase$Builder v, v, v, v;
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v;
org.eclipse.yasson.internal.components.SerializerBinding v;
org.eclipse.yasson.internal.model.JsonbCreator v;
org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration v;
jakarta.json.bind.config.PropertyNamingStrategy v;
java.lang.reflect.AnnotatedElement v, v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.JsonbAnnotatedElement;
v := @parameter: org.eclipse.yasson.internal.model.customization.ClassCustomization;
v := @parameter: jakarta.json.bind.config.PropertyNamingStrategy;
v = staticinvoke <org.eclipse.yasson.internal.model.customization.ClassCustomization: org.eclipse.yasson.internal.model.customization.ClassCustomization$Builder builder()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: boolean isClassNillable(org.eclipse.yasson.internal.model.JsonbAnnotatedElement)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.ClassCustomization$Builder: org.eclipse.yasson.internal.model.customization.CustomizationBase$Builder nillable(boolean)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.JsonbDateFormatter getJsonbDateFormat(org.eclipse.yasson.internal.model.JsonbAnnotatedElement)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.ClassCustomization$Builder: org.eclipse.yasson.internal.model.customization.ClassCustomization$Builder dateTimeFormatter(org.eclipse.yasson.internal.JsonbDateFormatter)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.JsonbNumberFormatter getJsonbNumberFormat(org.eclipse.yasson.internal.model.JsonbAnnotatedElement)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.ClassCustomization$Builder: org.eclipse.yasson.internal.model.customization.ClassCustomization$Builder numberFormatter(org.eclipse.yasson.internal.JsonbNumberFormatter)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: java.lang.reflect.AnnotatedElement getElement()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.model.JsonbCreator getCreator(java.lang.Class,jakarta.json.bind.config.PropertyNamingStrategy)>(v, v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.ClassCustomization$Builder: org.eclipse.yasson.internal.model.customization.ClassCustomization$Builder creator(org.eclipse.yasson.internal.model.JsonbCreator)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.lang.String[] getPropertyOrder(org.eclipse.yasson.internal.model.JsonbAnnotatedElement)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.ClassCustomization$Builder: org.eclipse.yasson.internal.model.customization.ClassCustomization$Builder propertyOrder(java.lang.String[])>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.components.AdapterBinding getAdapterBinding(org.eclipse.yasson.internal.model.JsonbAnnotatedElement)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.ClassCustomization$Builder: org.eclipse.yasson.internal.model.customization.CustomizationBase$Builder adapterBinding(org.eclipse.yasson.internal.components.AdapterBinding)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.components.SerializerBinding getSerializerBinding(org.eclipse.yasson.internal.model.JsonbAnnotatedElement)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.ClassCustomization$Builder: org.eclipse.yasson.internal.model.customization.CustomizationBase$Builder serializerBinding(org.eclipse.yasson.internal.components.SerializerBinding)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.components.DeserializerBinding getDeserializerBinding(org.eclipse.yasson.internal.model.JsonbAnnotatedElement)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.ClassCustomization$Builder: org.eclipse.yasson.internal.model.customization.CustomizationBase$Builder deserializerBinding(org.eclipse.yasson.internal.components.DeserializerBinding)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: java.lang.reflect.AnnotatedElement getElement()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: jakarta.json.bind.config.PropertyVisibilityStrategy getPropertyVisibilityStrategy(java.lang.Class)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.ClassCustomization$Builder: org.eclipse.yasson.internal.model.customization.ClassCustomization$Builder propertyVisibilityStrategy(jakarta.json.bind.config.PropertyVisibilityStrategy)>(v);
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration getPolymorphismConfig(org.eclipse.yasson.internal.model.JsonbAnnotatedElement,org.eclipse.yasson.internal.model.customization.ClassCustomization)>(v, v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.ClassCustomization$Builder: org.eclipse.yasson.internal.model.customization.ClassCustomization$Builder polymorphismConfig(org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.ClassCustomization$Builder: org.eclipse.yasson.internal.model.customization.ClassCustomization build()>();
return v;
}
private org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration getPolymorphismConfig(org.eclipse.yasson.internal.model.JsonbAnnotatedElement, org.eclipse.yasson.internal.model.customization.ClassCustomization)
{
jakarta.json.bind.'annotation'.JsonbSubtype v;
java.util.ListIterator v;
org.eclipse.yasson.internal.model.customization.ClassCustomization v;
jakarta.json.bind.JsonbException v, v, v;
boolean v, v, v, v, v;
jakarta.json.bind.'annotation'.JsonbSubtype[] v;
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v;
java.lang.'annotation'.Annotation v;
org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration v, v;
int v, v, v, v, v;
java.lang.String v, v, v, v, v, v, v;
java.util.LinkedList v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
java.lang.Class v, v, v, v, v, v;
java.lang.Object v, v, v;
org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration$Builder v, v, v, v, v, v, v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.JsonbAnnotatedElement;
v := @parameter: org.eclipse.yasson.internal.model.customization.ClassCustomization;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.ClassCustomization: org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration getPolymorphismConfig()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: java.util.LinkedList getAnnotations(java.lang.Class)>(class "Ljakarta/json/bind/annotation/JsonbTypeInfo;");
if v == null goto label;
v = virtualinvoke v.<java.util.LinkedList: int size()>();
if v != 1 goto label;
v = virtualinvoke v.<java.util.LinkedList: java.lang.Object getFirst()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement$AnnotationWrapper: boolean isInherited()>();
if v == 0 goto label;
v = new jakarta.json.bind.JsonbException;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration: java.lang.Class getDefinedType()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = virtualinvoke v.<java.util.LinkedList: java.lang.Object getFirst()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.Object)>(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[])>("Cannot process type information from multiple sources! Sources: \u and \u0001");
specialinvoke v.<jakarta.json.bind.JsonbException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<java.util.LinkedList: int size()>();
if v <= 1 goto label;
v = new jakarta.json.bind.JsonbException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.util.LinkedList)>(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[])>("Cannot process type information from multiple sources! Sources: \u0001");
specialinvoke v.<jakarta.json.bind.JsonbException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<java.util.LinkedList: boolean isEmpty()>();
if v == 0 goto label;
v = staticinvoke <org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration: org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration$Builder builder()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration$Builder: org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration$Builder of(org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration$Builder: org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration$Builder inherited(boolean)>(1);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration$Builder: org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration build()>();
return v;
label:
v = virtualinvoke v.<java.util.LinkedList: int size()>();
v = virtualinvoke v.<java.util.LinkedList: java.util.ListIterator listIterator(int)>(v);
label:
v = interfaceinvoke v.<java.util.ListIterator: boolean hasPrevious()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.ListIterator: java.lang.Object previous()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement$AnnotationWrapper: java.lang.'annotation'.Annotation getAnnotation()>();
v = staticinvoke <org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration: org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration$Builder builder()>();
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbTypeInfo: java.lang.String key()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration$Builder: org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration$Builder fieldName(java.lang.String)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement$AnnotationWrapper: boolean isInherited()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration$Builder: org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration$Builder inherited(boolean)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration$Builder: org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration$Builder parentConfig(org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration)>(v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement$AnnotationWrapper: java.lang.Class getDefinedType()>();
virtualinvoke v.<org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration$Builder: org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration$Builder definedType(java.lang.Class)>(v);
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbTypeInfo: jakarta.json.bind.'annotation'.JsonbSubtype[] value()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement$AnnotationWrapper: java.lang.Class getDefinedType()>();
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbSubtype: java.lang.Class type()>();
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
v = new jakarta.json.bind.JsonbException;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement$AnnotationWrapper: java.lang.Class getDefinedType()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,jakarta.json.bind.'annotation'.JsonbSubtype)>(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[])>("Defined alias type has to be child of the current type. JsonbSubType on the \u defines incorrect alias \u0001");
specialinvoke v.<jakarta.json.bind.JsonbException: void <init>(java.lang.String)>(v);
throw v;
label:
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbSubtype: java.lang.Class type()>();
v = interfaceinvoke v.<jakarta.json.bind.'annotation'.JsonbSubtype: java.lang.String alias()>();
virtualinvoke v.<org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration$Builder: org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration$Builder alias(java.lang.Class,java.lang.String)>(v, v);
v = v + 1;
goto label;
label:
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration$Builder: org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration build()>();
goto label;
label:
specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: void checkDuplicityPolymorphicPropertyNames(org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration)>(v);
return v;
}
private void checkDuplicityPolymorphicPropertyNames(org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration)
{
java.util.HashMap v;
org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration v, v;
jakarta.json.bind.JsonbException v;
java.lang.Class v, v;
java.lang.Object v;
java.lang.String v, v, v, v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
boolean v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration;
if v != null goto label;
return;
label:
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = v;
label:
if v == null goto label;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration: java.lang.String getFieldName()>();
v = interfaceinvoke v.<java.util.Map: boolean containsKey(java.lang.Object)>(v);
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
v = new jakarta.json.bind.JsonbException;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration: java.lang.Class getDefinedType()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration: java.lang.Class getDefinedType()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
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[])>("One polymorphic chain cannot have two conflicting property names. Polymorphic type defined on the type \u and \u have conflicting property name");
specialinvoke v.<jakarta.json.bind.JsonbException: void <init>(java.lang.String)>(v);
throw v;
label:
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = virtualinvoke v.<org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration: org.eclipse.yasson.internal.model.customization.TypeInheritanceConfiguration getParentConfig()>();
goto label;
label:
return;
}
public java.lang.Class getImplementationClass(org.eclipse.yasson.internal.model.Property)
{
java.util.Optional v, v;
java.lang.Object v;
org.eclipse.yasson.internal.model.Property v;
java.util.function.Function v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.Property;
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.util.Optional getAnnotationFromProperty(java.lang.Class,org.eclipse.yasson.internal.model.Property)>(class "Lorg/eclipse/yasson/ImplementationClass;", v);
v = staticinvoke <org.eclipse.yasson.internal.AnnotationIntrospector$value__362: java.util.function.Function bootstrap$()>();
v = virtualinvoke v.<java.util.Optional: java.util.Optional map(java.util.function.Function)>(v);
v = virtualinvoke v.<java.util.Optional: java.lang.Object orElse(java.lang.Object)>(null);
return v;
}
public org.eclipse.yasson.internal.model.JsonbAnnotatedElement collectAnnotations(java.lang.Class)
{
java.lang.'annotation'.Annotation[] v;
java.util.Map v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
boolean v, v, v, v, v, v, v;
java.util.Iterator v, v;
java.lang.Package v, v;
java.util.Collection v;
java.util.Set v;
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v;
java.lang.'annotation'.Annotation v, v;
java.util.Optional v;
java.lang.Class v, v, v;
java.lang.Object v, v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: java.lang.Class;
v = new org.eclipse.yasson.internal.model.JsonbAnnotatedElement;
specialinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: void <init>(java.lang.reflect.AnnotatedElement)>(v);
v = staticinvoke <org.eclipse.yasson.internal.BuiltInTypes: boolean isKnownType(java.lang.Class)>(v);
if v == 0 goto label;
return v;
label:
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.util.Map collectInterfaceAnnotations(java.lang.Class,java.lang.Class)>(v, v);
v = interfaceinvoke v.<java.util.Map: java.util.Collection values()>();
v = interfaceinvoke v.<java.util.Collection: 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()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement$AnnotationWrapper: java.lang.'annotation'.Annotation getAnnotation()>();
v = interfaceinvoke v.<java.lang.'annotation'.Annotation: java.lang.Class annotationType()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: java.util.Optional getAnnotation(java.lang.Class)>(v);
v = virtualinvoke v.<java.util.Optional: boolean isEmpty()>();
if v != 0 goto label;
v = <org.eclipse.yasson.internal.AnnotationIntrospector: java.util.Set REPEATABLE>;
v = virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement$AnnotationWrapper: java.lang.'annotation'.Annotation getAnnotation()>();
v = interfaceinvoke v.<java.lang.'annotation'.Annotation: java.lang.Class annotationType()>();
v = interfaceinvoke v.<java.util.Set: boolean contains(java.lang.Object)>(v);
if v == 0 goto label;
label:
virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: void putAnnotationWrapper(org.eclipse.yasson.internal.model.JsonbAnnotatedElement$AnnotationWrapper)>(v);
goto label;
label:
v = virtualinvoke v.<java.lang.Class: boolean isPrimitive()>();
if v != 0 goto label;
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v != 0 goto label;
v = virtualinvoke v.<java.lang.Class: java.lang.Package getPackage()>();
if v == null goto label;
v = virtualinvoke v.<java.lang.Class: java.lang.Package getPackage()>();
v = virtualinvoke v.<java.lang.Package: java.lang.'annotation'.Annotation[] getAnnotations()>();
specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: void addIfNotPresent(org.eclipse.yasson.internal.model.JsonbAnnotatedElement,java.lang.Class,java.lang.'annotation'.Annotation[])>(v, null, v);
label:
return v;
}
private java.util.Map collectInterfaceAnnotations(java.lang.Class, java.lang.Class)
{
java.util.HashMap v, v;
java.lang.'annotation'.Annotation[] v;
java.util.function.Function v;
org.eclipse.yasson.internal.model.JsonbAnnotatedElement$AnnotationWrapper v;
java.util.Map v;
int v, v, v, v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
boolean v;
java.util.function.Predicate v;
java.lang.Class[] v;
java.util.Set v;
java.util.function.Consumer v, v;
java.util.stream.Stream v, v, v;
java.lang.'annotation'.Annotation v;
java.lang.Class v, v, v, v;
java.lang.Object v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.Class;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
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[] 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 = staticinvoke <org.eclipse.yasson.internal.AnnotationIntrospector$lambda_collectInterfaceAnnotations_10__366: java.util.function.Function bootstrap$()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object computeIfAbsent(java.lang.Object,java.util.function.Function)>(v, v);
v = new org.eclipse.yasson.internal.model.JsonbAnnotatedElement$AnnotationWrapper;
specialinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement$AnnotationWrapper: void <init>(java.lang.'annotation'.Annotation,boolean,java.lang.Class)>(v, 1, v);
virtualinvoke v.<java.util.LinkedList: boolean add(java.lang.Object)>(v);
v = v + 1;
goto label;
label:
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = virtualinvoke v.<java.lang.Class: java.lang.Class[] getInterfaces()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = specialinvoke v.<org.eclipse.yasson.internal.AnnotationIntrospector: java.util.Map collectInterfaceAnnotations(java.lang.Class,java.lang.Class)>(v, v);
v = interfaceinvoke v.<java.util.Map: java.util.Set entrySet()>();
v = interfaceinvoke v.<java.util.Set: java.util.stream.Stream stream()>();
v = staticinvoke <org.eclipse.yasson.internal.AnnotationIntrospector$lambda_collectInterfaceAnnotations_11__363: java.util.function.Predicate bootstrap$(java.util.Map)>(v);
v = interfaceinvoke v.<java.util.stream.Stream: java.util.stream.Stream filter(java.util.function.Predicate)>(v);
v = staticinvoke <org.eclipse.yasson.internal.AnnotationIntrospector$lambda_collectInterfaceAnnotations_12__364: java.util.function.Consumer bootstrap$(java.util.Map)>(v);
v = interfaceinvoke v.<java.util.stream.Stream: java.util.stream.Stream peek(java.util.function.Consumer)>(v);
v = staticinvoke <org.eclipse.yasson.internal.AnnotationIntrospector$lambda_collectInterfaceAnnotations_15__365: java.util.function.Consumer bootstrap$(java.util.Map,java.util.Map)>(v, v);
interfaceinvoke v.<java.util.stream.Stream: void forEach(java.util.function.Consumer)>(v);
v = v + 1;
goto label;
label:
return v;
}
private transient void addIfNotPresent(org.eclipse.yasson.internal.model.JsonbAnnotatedElement, java.lang.Class, java.lang.'annotation'.Annotation[])
{
java.util.Set v;
java.lang.'annotation'.Annotation[] v;
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v;
int v, v;
java.lang.'annotation'.Annotation v;
java.util.Optional v;
java.lang.Class v, v, v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
boolean v, v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: org.eclipse.yasson.internal.model.JsonbAnnotatedElement;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.'annotation'.Annotation[];
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.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: java.util.Optional getAnnotation(java.lang.Class)>(v);
v = virtualinvoke v.<java.util.Optional: boolean isEmpty()>();
if v != 0 goto label;
v = <org.eclipse.yasson.internal.AnnotationIntrospector: java.util.Set REPEATABLE>;
v = interfaceinvoke v.<java.lang.'annotation'.Annotation: java.lang.Class annotationType()>();
v = interfaceinvoke v.<java.util.Set: boolean contains(java.lang.Object)>(v);
if v == 0 goto label;
label:
virtualinvoke v.<org.eclipse.yasson.internal.model.JsonbAnnotatedElement: void putAnnotation(java.lang.'annotation'.Annotation,boolean,java.lang.Class)>(v, 1, v);
label:
v = v + 1;
goto label;
label:
return;
}
public boolean requiredParameters(java.lang.reflect.Executable, org.eclipse.yasson.internal.model.JsonbAnnotatedElement)
{
org.eclipse.yasson.internal.model.JsonbAnnotatedElement v;
org.eclipse.yasson.internal.JsonbConfigProperties v;
java.lang.reflect.Executable v;
org.eclipse.yasson.internal.JsonbContext v;
org.eclipse.yasson.internal.AnnotationIntrospector v;
boolean v;
v := @this: org.eclipse.yasson.internal.AnnotationIntrospector;
v := @parameter: java.lang.reflect.Executable;
v := @parameter: org.eclipse.yasson.internal.model.JsonbAnnotatedElement;
v = v.<org.eclipse.yasson.internal.AnnotationIntrospector: org.eclipse.yasson.internal.JsonbContext jsonbContext>;
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbContext: org.eclipse.yasson.internal.JsonbConfigProperties getConfigProperties()>();
v = virtualinvoke v.<org.eclipse.yasson.internal.JsonbConfigProperties: boolean hasRequiredCreatorParameters()>();
return v;
}
static void <clinit>()
{
java.lang.Class[] v;
java.util.Set v;
java.util.List v;
v = staticinvoke <java.util.Set: java.util.Set of(java.lang.Object)>(class "Ljakarta/json/bind/annotation/JsonbTypeInfo;");
<org.eclipse.yasson.internal.AnnotationIntrospector: java.util.Set REPEATABLE> = v;
v = newarray (java.lang.Class)[6];
v[0] = class "Ljakarta/json/bind/annotation/JsonbDateFormat;";
v[1] = class "Ljakarta/json/bind/annotation/JsonbNumberFormat;";
v[2] = class "Ljakarta/json/bind/annotation/JsonbProperty;";
v[3] = class "Ljakarta/json/bind/annotation/JsonbTypeAdapter;";
v[4] = class "Ljakarta/json/bind/annotation/JsonbTypeSerializer;";
v[5] = class "Ljakarta/json/bind/annotation/JsonbTypeDeserializer;";
v = staticinvoke <java.util.Arrays: java.util.List asList(java.lang.Object[])>(v);
<org.eclipse.yasson.internal.AnnotationIntrospector: java.util.List TRANSIENT_INCOMPATIBLE> = v;
return;
}
}