public class oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter extends java.lang.Object implements oadd.org.apache.drill.exec.record.ColumnConverter
{
private final oadd.org.apache.drill.exec.record.ColumnConverterFactory factory;
private final oadd.org.apache.drill.exec.record.metadata.TupleMetadata providedSchema;
private final oadd.org.apache.drill.exec.vector.accessor.TupleWriter tupleWriter;
private final java.util.Map converters;
public void <init>(oadd.org.apache.drill.exec.record.ColumnConverterFactory, oadd.org.apache.drill.exec.record.metadata.TupleMetadata, oadd.org.apache.drill.exec.vector.accessor.TupleWriter, java.util.Map)
{
oadd.org.apache.drill.exec.record.metadata.TupleMetadata v;
oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter v;
oadd.org.apache.drill.exec.vector.accessor.TupleWriter v;
java.util.Map v;
oadd.org.apache.drill.exec.record.ColumnConverterFactory v;
java.util.HashMap v;
v := @this: oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter;
v := @parameter: oadd.org.apache.drill.exec.record.ColumnConverterFactory;
v := @parameter: oadd.org.apache.drill.exec.record.metadata.TupleMetadata;
v := @parameter: oadd.org.apache.drill.exec.vector.accessor.TupleWriter;
v := @parameter: java.util.Map;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter: oadd.org.apache.drill.exec.record.ColumnConverterFactory factory> = v;
v.<oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter: oadd.org.apache.drill.exec.record.metadata.TupleMetadata providedSchema> = v;
v.<oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter: oadd.org.apache.drill.exec.vector.accessor.TupleWriter tupleWriter> = v;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>(java.util.Map)>(v);
v.<oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter: java.util.Map converters> = v;
return;
}
public void convert(java.lang.Object)
{
java.util.function.BiConsumer v;
java.lang.Object v;
oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter v;
v := @this: oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter;
v := @parameter: java.lang.Object;
if v != null goto label;
return;
label:
v = staticinvoke <oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter$processValue__561: java.util.function.BiConsumer bootstrap$(oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter)>(v);
interfaceinvoke v.<java.util.Map: void forEach(java.util.function.BiConsumer)>(v);
return;
}
public void processValue(java.lang.String, java.lang.Object)
{
oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter v;
java.util.Map v;
java.lang.Object v, v;
java.lang.String v;
java.util.function.Function v;
v := @this: oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Object;
v = v.<oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter: java.util.Map converters>;
v = staticinvoke <oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter$lambda_processValue_0__562: java.util.function.Function bootstrap$(oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter,java.lang.Object)>(v, v);
v = interfaceinvoke v.<java.util.Map: java.lang.Object computeIfAbsent(java.lang.Object,java.util.function.Function)>(v, v);
if v == null goto label;
interfaceinvoke v.<oadd.org.apache.drill.exec.record.ColumnConverter: void convert(java.lang.Object)>(v);
label:
return;
}
private oadd.org.apache.drill.exec.record.ColumnConverter getColumnConverter(java.lang.Object, java.lang.String)
{
oadd.org.apache.drill.exec.record.metadata.TupleMetadata v, v, v;
oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter v;
oadd.org.apache.drill.exec.vector.accessor.ObjectWriter v;
oadd.org.apache.drill.exec.vector.accessor.TupleWriter v, v;
oadd.org.apache.drill.exec.record.metadata.ColumnMetadata v, v, v;
oadd.org.apache.drill.exec.record.ColumnConverterFactory v;
java.lang.Object v;
java.lang.String v;
oadd.org.apache.drill.exec.record.ColumnConverter v;
v := @this: oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.String;
if v == null goto label;
v = v.<oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter: oadd.org.apache.drill.exec.record.metadata.TupleMetadata providedSchema>;
if v == null goto label;
v = v.<oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter: oadd.org.apache.drill.exec.record.metadata.TupleMetadata providedSchema>;
v = interfaceinvoke v.<oadd.org.apache.drill.exec.record.metadata.TupleMetadata: oadd.org.apache.drill.exec.record.metadata.ColumnMetadata metadata(java.lang.String)>(v);
goto label;
label:
v = null;
label:
v = specialinvoke v.<oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter: oadd.org.apache.drill.exec.record.metadata.ColumnMetadata buildColumnMetadata(java.lang.String,java.lang.Object)>(v, v);
if v == null goto label;
v = v.<oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter: oadd.org.apache.drill.exec.vector.accessor.TupleWriter tupleWriter>;
if v == null goto label;
v = v;
goto label;
label:
v = v;
label:
interfaceinvoke v.<oadd.org.apache.drill.exec.vector.accessor.TupleWriter: int addColumn(oadd.org.apache.drill.exec.record.metadata.ColumnMetadata)>(v);
v = v.<oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter: oadd.org.apache.drill.exec.record.ColumnConverterFactory factory>;
v = v.<oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter: oadd.org.apache.drill.exec.record.metadata.TupleMetadata providedSchema>;
v = v.<oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter: oadd.org.apache.drill.exec.vector.accessor.TupleWriter tupleWriter>;
v = interfaceinvoke v.<oadd.org.apache.drill.exec.vector.accessor.TupleWriter: oadd.org.apache.drill.exec.vector.accessor.ObjectWriter column(java.lang.String)>(v);
v = virtualinvoke v.<oadd.org.apache.drill.exec.record.ColumnConverterFactory: oadd.org.apache.drill.exec.record.ColumnConverter getConverter(oadd.org.apache.drill.exec.record.metadata.TupleMetadata,oadd.org.apache.drill.exec.record.metadata.ColumnMetadata,oadd.org.apache.drill.exec.vector.accessor.ObjectWriter)>(v, v, v);
return v;
label:
return null;
}
private oadd.org.apache.drill.exec.record.metadata.ColumnMetadata buildColumnMetadata(java.lang.String, java.lang.Object)
{
oadd.org.apache.drill.exec.record.metadata.MapColumnMetadata v;
int v;
oadd.org.apache.drill.exec.record.metadata.PrimitiveColumnMetadata v;
java.lang.String v;
boolean v, v, v, v;
oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter v;
oadd.org.apache.drill.common.types.TypeProtos$DataMode v;
java.util.Iterator v;
oadd.org.apache.drill.common.types.TypeProtos$MinorType v;
oadd.org.apache.drill.exec.record.metadata.ColumnMetadata v, v;
java.lang.Class v, v, v;
java.lang.Object v, v, v;
v := @this: oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Object;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = class "Ljava/util/Map;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = specialinvoke v.<oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter: oadd.org.apache.drill.exec.record.metadata.MapColumnMetadata buildMapColumnMetadata(java.lang.String,java.util.Map)>(v, v);
return v;
label:
v = class "Ljava/util/List;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v != 0 goto label;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = specialinvoke v.<oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter: oadd.org.apache.drill.exec.record.metadata.ColumnMetadata buildListColumnMetadata(java.lang.String,java.lang.Object)>(v, v);
return v;
label:
return null;
label:
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v == 0 goto label;
v = lengthof v;
if v <= 0 goto label;
v = v[0];
v = specialinvoke v.<oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter: oadd.org.apache.drill.exec.record.metadata.ColumnMetadata buildListColumnMetadata(java.lang.String,java.lang.Object)>(v, v);
return v;
label:
return null;
label:
v = virtualinvoke v.<oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter: oadd.org.apache.drill.common.types.TypeProtos$MinorType getScalarMinorType(java.lang.Class)>(v);
v = <oadd.org.apache.drill.common.types.TypeProtos$DataMode: oadd.org.apache.drill.common.types.TypeProtos$DataMode OPTIONAL>;
v = staticinvoke <oadd.org.apache.drill.exec.record.metadata.MetadataUtils: oadd.org.apache.drill.exec.record.metadata.PrimitiveColumnMetadata newScalar(java.lang.String,oadd.org.apache.drill.common.types.TypeProtos$MinorType,oadd.org.apache.drill.common.types.TypeProtos$DataMode)>(v, v, v);
return v;
}
private oadd.org.apache.drill.exec.record.metadata.MapColumnMetadata buildMapColumnMetadata(java.lang.String, java.util.Map)
{
oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter v;
oadd.org.apache.drill.exec.record.metadata.MapColumnMetadata v;
java.util.Map v;
java.util.function.BiConsumer v;
java.lang.String v;
oadd.org.apache.drill.exec.record.metadata.TupleSchema v;
v := @this: oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter;
v := @parameter: java.lang.String;
v := @parameter: java.util.Map;
v = new oadd.org.apache.drill.exec.record.metadata.TupleSchema;
specialinvoke v.<oadd.org.apache.drill.exec.record.metadata.TupleSchema: void <init>()>();
v = staticinvoke <oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter$lambda_buildMapColumnMetadata_1__563: java.util.function.BiConsumer bootstrap$(oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter,oadd.org.apache.drill.exec.record.metadata.TupleMetadata)>(v, v);
interfaceinvoke v.<java.util.Map: void forEach(java.util.function.BiConsumer)>(v);
v = staticinvoke <oadd.org.apache.drill.exec.record.metadata.MetadataUtils: oadd.org.apache.drill.exec.record.metadata.MapColumnMetadata newMap(java.lang.String,oadd.org.apache.drill.exec.record.metadata.TupleMetadata)>(v, v);
return v;
}
private oadd.org.apache.drill.exec.record.metadata.ColumnMetadata buildListColumnMetadata(java.lang.String, java.lang.Object)
{
oadd.org.apache.drill.exec.record.metadata.PrimitiveColumnMetadata v;
java.lang.String v;
boolean v, v, v;
oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter v;
oadd.org.apache.drill.common.types.TypeProtos$DataMode v;
oadd.org.apache.drill.exec.record.metadata.RepeatedListColumnMetadata v;
oadd.org.apache.drill.common.types.TypeProtos$MinorType v;
oadd.org.apache.drill.exec.record.metadata.ColumnMetadata v, v;
java.lang.Class v, v, v, v;
java.lang.Object v;
v := @this: oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Object;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.Class getComponentType()>();
v = class "Ljava/util/List;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
if v == null goto label;
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v == 0 goto label;
label:
v = specialinvoke v.<oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter: oadd.org.apache.drill.exec.record.metadata.ColumnMetadata buildColumnMetadata(java.lang.String,java.lang.Object)>(v, v);
v = staticinvoke <oadd.org.apache.drill.exec.record.metadata.MetadataUtils: oadd.org.apache.drill.exec.record.metadata.RepeatedListColumnMetadata newRepeatedList(java.lang.String,oadd.org.apache.drill.exec.record.metadata.ColumnMetadata)>(v, v);
return v;
label:
v = class "Ljava/util/Map;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = staticinvoke <oadd.org.apache.drill.exec.record.metadata.MetadataUtils: oadd.org.apache.drill.exec.record.metadata.ColumnMetadata newMapArray(java.lang.String)>(v);
return v;
label:
v = virtualinvoke v.<oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter: oadd.org.apache.drill.common.types.TypeProtos$MinorType getScalarMinorType(java.lang.Class)>(v);
v = <oadd.org.apache.drill.common.types.TypeProtos$DataMode: oadd.org.apache.drill.common.types.TypeProtos$DataMode REPEATED>;
v = staticinvoke <oadd.org.apache.drill.exec.record.metadata.MetadataUtils: oadd.org.apache.drill.exec.record.metadata.PrimitiveColumnMetadata newScalar(java.lang.String,oadd.org.apache.drill.common.types.TypeProtos$MinorType,oadd.org.apache.drill.common.types.TypeProtos$DataMode)>(v, v, v);
return v;
}
protected oadd.org.apache.drill.common.types.TypeProtos$MinorType getScalarMinorType(java.lang.Class)
{
java.lang.String v, v;
oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter v;
java.lang.IllegalArgumentException v;
oadd.org.apache.drill.common.types.TypeProtos$MinorType v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.Class v, v, v, v, v, v, v, v, v;
v := @this: oadd.org.apache.drill.exec.record.ColumnConverter$MapColumnConverter;
v := @parameter: java.lang.Class;
v = <java.lang.Byte: java.lang.Class TYPE>;
if v == v goto label;
if v != class "Ljava/lang/Byte;" goto label;
label:
v = <oadd.org.apache.drill.common.types.TypeProtos$MinorType: oadd.org.apache.drill.common.types.TypeProtos$MinorType TINYINT>;
return v;
label:
v = <java.lang.Short: java.lang.Class TYPE>;
if v == v goto label;
if v != class "Ljava/lang/Short;" goto label;
label:
v = <oadd.org.apache.drill.common.types.TypeProtos$MinorType: oadd.org.apache.drill.common.types.TypeProtos$MinorType SMALLINT>;
return v;
label:
v = <java.lang.Integer: java.lang.Class TYPE>;
if v == v goto label;
if v != class "Ljava/lang/Integer;" goto label;
label:
v = <oadd.org.apache.drill.common.types.TypeProtos$MinorType: oadd.org.apache.drill.common.types.TypeProtos$MinorType INT>;
return v;
label:
v = <java.lang.Long: java.lang.Class TYPE>;
if v == v goto label;
if v != class "Ljava/lang/Long;" goto label;
label:
v = <oadd.org.apache.drill.common.types.TypeProtos$MinorType: oadd.org.apache.drill.common.types.TypeProtos$MinorType BIGINT>;
return v;
label:
if v != class "Ljava/sql/Date;" goto label;
v = <oadd.org.apache.drill.common.types.TypeProtos$MinorType: oadd.org.apache.drill.common.types.TypeProtos$MinorType DATE>;
return v;
label:
if v != class "Ljava/sql/Time;" goto label;
v = <oadd.org.apache.drill.common.types.TypeProtos$MinorType: oadd.org.apache.drill.common.types.TypeProtos$MinorType TIME>;
return v;
label:
if v != class "Ljava/sql/Timestamp;" goto label;
v = <oadd.org.apache.drill.common.types.TypeProtos$MinorType: oadd.org.apache.drill.common.types.TypeProtos$MinorType TIMESTAMP>;
return v;
label:
v = <java.lang.Float: java.lang.Class TYPE>;
if v == v goto label;
if v != class "Ljava/lang/Float;" goto label;
label:
v = <oadd.org.apache.drill.common.types.TypeProtos$MinorType: oadd.org.apache.drill.common.types.TypeProtos$MinorType FLOAT4>;
return v;
label:
v = <java.lang.Double: java.lang.Class TYPE>;
if v == v goto label;
if v != class "Ljava/lang/Double;" goto label;
label:
v = <oadd.org.apache.drill.common.types.TypeProtos$MinorType: oadd.org.apache.drill.common.types.TypeProtos$MinorType FLOAT8>;
return v;
label:
v = <java.lang.Boolean: java.lang.Class TYPE>;
if v == v goto label;
if v != class "Ljava/lang/Boolean;" goto label;
label:
v = <oadd.org.apache.drill.common.types.TypeProtos$MinorType: oadd.org.apache.drill.common.types.TypeProtos$MinorType BIT>;
return v;
label:
v = <java.lang.Character: java.lang.Class TYPE>;
if v == v goto label;
if v != class "Ljava/lang/Character;" goto label;
label:
v = <oadd.org.apache.drill.common.types.TypeProtos$MinorType: oadd.org.apache.drill.common.types.TypeProtos$MinorType VARCHAR>;
return v;
label:
if v != class "Ljava/lang/String;" goto label;
v = <oadd.org.apache.drill.common.types.TypeProtos$MinorType: oadd.org.apache.drill.common.types.TypeProtos$MinorType VARCHAR>;
return v;
label:
if v != class "[B" goto label;
v = <oadd.org.apache.drill.common.types.TypeProtos$MinorType: oadd.org.apache.drill.common.types.TypeProtos$MinorType VARBINARY>;
return v;
label:
if v != class "Ljava/math/BigDecimal;" goto label;
v = <oadd.org.apache.drill.common.types.TypeProtos$MinorType: oadd.org.apache.drill.common.types.TypeProtos$MinorType VARDECIMAL>;
return v;
label:
v = new java.lang.IllegalArgumentException;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Cannot determine minor type for \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
}
}