public class org.apache.drill.exec.udfs.UserAgentFunctions$UserAgentFunction extends java.lang.Object implements org.apache.drill.exec.expr.DrillSimpleFunc
{
org.apache.drill.exec.expr.holders.NullableVarCharHolder[] input;
org.apache.drill.exec.vector.complex.writer.BaseWriter$ComplexWriter outWriter;
io.netty.buffer.DrillBuf outBuffer;
nl.basjes.parse.useragent.UserAgentAnalyzer uaa;
java.util.List allFields;
public void <init>()
{
org.apache.drill.exec.udfs.UserAgentFunctions$UserAgentFunction v;
v := @this: org.apache.drill.exec.udfs.UserAgentFunctions$UserAgentFunction;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public void setup()
{
java.util.List v;
nl.basjes.parse.useragent.UserAgentAnalyzer v;
org.apache.drill.exec.udfs.UserAgentFunctions$UserAgentFunction v;
v := @this: org.apache.drill.exec.udfs.UserAgentFunctions$UserAgentFunction;
v = staticinvoke <org.apache.drill.exec.udfs.UserAgentAnalyzerProvider: nl.basjes.parse.useragent.UserAgentAnalyzer getInstance()>();
v.<org.apache.drill.exec.udfs.UserAgentFunctions$UserAgentFunction: nl.basjes.parse.useragent.UserAgentAnalyzer uaa> = v;
v = staticinvoke <org.apache.drill.exec.udfs.UserAgentAnalyzerProvider: java.util.List getAllFields()>();
v.<org.apache.drill.exec.udfs.UserAgentFunctions$UserAgentFunction: java.util.List allFields> = v;
return;
}
public void eval()
{
byte[] v;
org.apache.drill.exec.expr.holders.VarCharHolder v;
org.apache.drill.exec.vector.complex.writer.BaseWriter$ComplexWriter v;
org.apache.drill.exec.vector.complex.writer.VarCharWriter v;
org.apache.drill.exec.vector.complex.writer.BaseWriter$MapWriter v;
java.nio.charset.Charset v;
nl.basjes.parse.useragent.UserAgent$ImmutableUserAgent v;
java.util.Map v;
int v, v;
io.netty.buffer.DrillBuf v, v, v, v;
java.lang.String v;
org.apache.drill.exec.expr.holders.NullableVarCharHolder[] v;
boolean v, v;
java.util.Iterator v;
nl.basjes.parse.useragent.AnalyzerUtilities$ParsedArguments v;
java.util.List v;
java.lang.Object v;
nl.basjes.parse.useragent.UserAgentAnalyzer v;
org.apache.drill.exec.udfs.UserAgentFunctions$UserAgentFunction v;
v := @this: org.apache.drill.exec.udfs.UserAgentFunctions$UserAgentFunction;
v = v.<org.apache.drill.exec.udfs.UserAgentFunctions$UserAgentFunction: org.apache.drill.exec.vector.complex.writer.BaseWriter$ComplexWriter outWriter>;
v = interfaceinvoke v.<org.apache.drill.exec.vector.complex.writer.BaseWriter$ComplexWriter: org.apache.drill.exec.vector.complex.writer.BaseWriter$MapWriter rootAsMap()>();
v = v.<org.apache.drill.exec.udfs.UserAgentFunctions$UserAgentFunction: org.apache.drill.exec.expr.holders.NullableVarCharHolder[] input>;
v = staticinvoke <org.apache.drill.exec.udfs.UserAgentAnalyzerProvider: nl.basjes.parse.useragent.AnalyzerUtilities$ParsedArguments parseArgumentArray(org.apache.drill.exec.expr.holders.NullableVarCharHolder[])>(v);
v = v.<org.apache.drill.exec.udfs.UserAgentFunctions$UserAgentFunction: nl.basjes.parse.useragent.UserAgentAnalyzer uaa>;
v = virtualinvoke v.<nl.basjes.parse.useragent.AnalyzerUtilities$ParsedArguments: java.util.Map getRequestHeaders()>();
v = virtualinvoke v.<nl.basjes.parse.useragent.UserAgentAnalyzer: nl.basjes.parse.useragent.UserAgent$ImmutableUserAgent parse(java.util.Map)>(v);
v = virtualinvoke v.<nl.basjes.parse.useragent.AnalyzerUtilities$ParsedArguments: java.util.List getWantedFields()>();
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v == 0 goto label;
v = v.<org.apache.drill.exec.udfs.UserAgentFunctions$UserAgentFunction: java.util.List allFields>;
label:
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 = new org.apache.drill.exec.expr.holders.VarCharHolder;
specialinvoke v.<org.apache.drill.exec.expr.holders.VarCharHolder: void <init>()>();
v = interfaceinvoke v.<nl.basjes.parse.useragent.UserAgent: java.lang.String getValue(java.lang.String)>(v);
v = <java.nio.charset.StandardCharsets: java.nio.charset.Charset UTF_8>;
v = virtualinvoke v.<java.lang.String: byte[] getBytes(java.nio.charset.Charset)>(v);
v = v.<org.apache.drill.exec.udfs.UserAgentFunctions$UserAgentFunction: io.netty.buffer.DrillBuf outBuffer>;
v = lengthof v;
v = virtualinvoke v.<io.netty.buffer.DrillBuf: io.netty.buffer.DrillBuf reallocIfNeeded(int)>(v);
v.<org.apache.drill.exec.udfs.UserAgentFunctions$UserAgentFunction: io.netty.buffer.DrillBuf outBuffer> = v;
v = v.<org.apache.drill.exec.udfs.UserAgentFunctions$UserAgentFunction: io.netty.buffer.DrillBuf outBuffer>;
virtualinvoke v.<io.netty.buffer.DrillBuf: io.netty.buffer.ByteBuf setBytes(int,byte[])>(0, v);
v.<org.apache.drill.exec.expr.holders.VarCharHolder: int start> = 0;
v = lengthof v;
v.<org.apache.drill.exec.expr.holders.VarCharHolder: int end> = v;
v = v.<org.apache.drill.exec.udfs.UserAgentFunctions$UserAgentFunction: io.netty.buffer.DrillBuf outBuffer>;
v.<org.apache.drill.exec.expr.holders.VarCharHolder: io.netty.buffer.DrillBuf buffer> = v;
v = interfaceinvoke v.<org.apache.drill.exec.vector.complex.writer.BaseWriter$MapWriter: org.apache.drill.exec.vector.complex.writer.VarCharWriter varChar(java.lang.String)>(v);
interfaceinvoke v.<org.apache.drill.exec.vector.complex.writer.VarCharWriter: void write(org.apache.drill.exec.expr.holders.VarCharHolder)>(v);
goto label;
label:
return;
}
}