public class oadd.org.apache.drill.exec.cache.VectorSerializer$Writer extends java.lang.Object implements java.io.Closeable
{
static final oadd.com.codahale.metrics.MetricRegistry metrics;
static final java.lang.String WRITER_TIMER;
private final java.nio.channels.WritableByteChannel channel;
private final java.io.OutputStream output;
private long timeNs;
private int bytesWritten;
private void <init>(java.nio.channels.WritableByteChannel)
{
java.io.OutputStream v;
oadd.org.apache.drill.exec.cache.VectorSerializer$Writer v;
java.nio.channels.WritableByteChannel v;
v := @this: oadd.org.apache.drill.exec.cache.VectorSerializer$Writer;
v := @parameter: java.nio.channels.WritableByteChannel;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<oadd.org.apache.drill.exec.cache.VectorSerializer$Writer: java.nio.channels.WritableByteChannel channel> = v;
v = staticinvoke <java.nio.channels.Channels: java.io.OutputStream newOutputStream(java.nio.channels.WritableByteChannel)>(v);
v.<oadd.org.apache.drill.exec.cache.VectorSerializer$Writer: java.io.OutputStream output> = v;
return;
}
public int write(oadd.org.apache.drill.exec.record.VectorAccessible) throws java.io.IOException
{
int v;
oadd.org.apache.drill.exec.cache.VectorSerializer$Writer v;
oadd.org.apache.drill.exec.record.VectorAccessible v;
v := @this: oadd.org.apache.drill.exec.cache.VectorSerializer$Writer;
v := @parameter: oadd.org.apache.drill.exec.record.VectorAccessible;
v = virtualinvoke v.<oadd.org.apache.drill.exec.cache.VectorSerializer$Writer: int write(oadd.org.apache.drill.exec.record.VectorAccessible,oadd.org.apache.drill.exec.record.selection.SelectionVector)>(v, null);
return v;
}
public int write(oadd.org.apache.drill.exec.record.VectorAccessible, oadd.org.apache.drill.exec.record.selection.SelectionVector) throws java.io.IOException
{
java.lang.Throwable v;
oadd.org.apache.drill.exec.record.selection.SelectionVector v;
oadd.org.apache.drill.exec.record.WritableBatch v;
oadd.org.apache.drill.exec.cache.VectorSerializer$Writer v;
int v, v;
oadd.org.apache.drill.exec.record.VectorAccessible v;
boolean v;
v := @this: oadd.org.apache.drill.exec.cache.VectorSerializer$Writer;
v := @parameter: oadd.org.apache.drill.exec.record.VectorAccessible;
v := @parameter: oadd.org.apache.drill.exec.record.selection.SelectionVector;
staticinvoke <org.apache.drill.shaded.guava.com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v = interfaceinvoke v.<oadd.org.apache.drill.exec.record.VectorAccessible: int getRecordCount()>();
if v == null goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = staticinvoke <oadd.org.apache.drill.exec.record.WritableBatch: oadd.org.apache.drill.exec.record.WritableBatch getBatchNoHVWrap(int,java.lang.Iterable,boolean)>(v, v, v);
label:
v = virtualinvoke v.<oadd.org.apache.drill.exec.cache.VectorSerializer$Writer: int write(oadd.org.apache.drill.exec.record.WritableBatch,oadd.org.apache.drill.exec.record.selection.SelectionVector)>(v, v);
label:
virtualinvoke v.<oadd.org.apache.drill.exec.record.WritableBatch: void clear()>();
return v;
label:
v := @caughtexception;
virtualinvoke v.<oadd.org.apache.drill.exec.record.WritableBatch: void clear()>();
throw v;
catch java.lang.Throwable from label to label with label;
}
public int write(oadd.org.apache.drill.exec.record.WritableBatch, oadd.org.apache.drill.exec.record.selection.SelectionVector) throws java.io.IOException
{
oadd.com.codahale.metrics.MetricRegistry v;
oadd.com.codahale.metrics.Timer v;
long v, v, v;
oadd.org.apache.drill.exec.record.WritableBatch v;
java.nio.ByteBuffer v, v;
oadd.org.apache.drill.exec.cache.VectorSerializer$Writer v;
oadd.com.codahale.metrics.Timer$Context v;
int v, v, v, v, v, v, v, v, v, v, v;
java.lang.String v;
java.io.OutputStream v;
oadd.io.netty.buffer.DrillBuf[] v;
oadd.org.apache.drill.exec.record.selection.SelectionVector v;
oadd.io.netty.buffer.DrillBuf v, v;
java.nio.channels.WritableByteChannel v, v, v;
oadd.org.apache.drill.exec.proto.UserBitShared$RecordBatchDef v;
v := @this: oadd.org.apache.drill.exec.cache.VectorSerializer$Writer;
v := @parameter: oadd.org.apache.drill.exec.record.WritableBatch;
v := @parameter: oadd.org.apache.drill.exec.record.selection.SelectionVector;
staticinvoke <org.apache.drill.shaded.guava.com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v = v.<oadd.org.apache.drill.exec.cache.VectorSerializer$Writer: java.nio.channels.WritableByteChannel channel>;
staticinvoke <org.apache.drill.shaded.guava.com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v = <oadd.org.apache.drill.exec.cache.VectorSerializer$Writer: oadd.com.codahale.metrics.MetricRegistry metrics>;
v = <oadd.org.apache.drill.exec.cache.VectorSerializer$Writer: java.lang.String WRITER_TIMER>;
v = virtualinvoke v.<oadd.com.codahale.metrics.MetricRegistry: oadd.com.codahale.metrics.Timer timer(java.lang.String)>(v);
v = virtualinvoke v.<oadd.com.codahale.metrics.Timer: oadd.com.codahale.metrics.Timer$Context time()>();
v = virtualinvoke v.<oadd.org.apache.drill.exec.record.WritableBatch: oadd.io.netty.buffer.DrillBuf[] getBuffers()>();
v = virtualinvoke v.<oadd.org.apache.drill.exec.record.WritableBatch: oadd.org.apache.drill.exec.proto.UserBitShared$RecordBatchDef getDef()>();
v = virtualinvoke v.<oadd.org.apache.drill.exec.proto.UserBitShared$RecordBatchDef: int getSerializedSize()>();
v = v.<oadd.org.apache.drill.exec.cache.VectorSerializer$Writer: java.io.OutputStream output>;
virtualinvoke v.<oadd.org.apache.drill.exec.proto.UserBitShared$RecordBatchDef: void writeDelimitedTo(java.io.OutputStream)>(v);
if v == null goto label;
v = virtualinvoke v.<oadd.org.apache.drill.exec.record.selection.SelectionVector2: int getCount()>();
v = v * 2;
v = virtualinvoke v.<oadd.org.apache.drill.exec.record.selection.SelectionVector2: oadd.io.netty.buffer.DrillBuf getBuffer(boolean)>(0);
v = virtualinvoke v.<oadd.io.netty.buffer.DrillBuf: java.nio.ByteBuffer nioBuffer(int,int)>(0, v);
label:
v = virtualinvoke v.<java.nio.ByteBuffer: int remaining()>();
if v <= 0 goto label;
v = v.<oadd.org.apache.drill.exec.cache.VectorSerializer$Writer: java.nio.channels.WritableByteChannel channel>;
v = interfaceinvoke v.<java.nio.channels.WritableByteChannel: int write(java.nio.ByteBuffer)>(v);
v = v + v;
goto label;
label:
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<oadd.io.netty.buffer.DrillBuf: java.nio.ByteBuffer nioBuffer()>();
label:
v = virtualinvoke v.<java.nio.ByteBuffer: int remaining()>();
if v <= 0 goto label;
v = v.<oadd.org.apache.drill.exec.cache.VectorSerializer$Writer: java.nio.channels.WritableByteChannel channel>;
v = interfaceinvoke v.<java.nio.channels.WritableByteChannel: int write(java.nio.ByteBuffer)>(v);
v = v + v;
goto label;
label:
v = v + 1;
goto label;
label:
v = v.<oadd.org.apache.drill.exec.cache.VectorSerializer$Writer: long timeNs>;
v = virtualinvoke v.<oadd.com.codahale.metrics.Timer$Context: long stop()>();
v = v + v;
v.<oadd.org.apache.drill.exec.cache.VectorSerializer$Writer: long timeNs> = v;
v = v.<oadd.org.apache.drill.exec.cache.VectorSerializer$Writer: int bytesWritten>;
v = v + v;
v.<oadd.org.apache.drill.exec.cache.VectorSerializer$Writer: int bytesWritten> = v;
return v;
}
public void close() throws java.io.IOException
{
oadd.org.apache.drill.exec.cache.VectorSerializer$Writer v;
java.nio.channels.WritableByteChannel v, v;
boolean v;
v := @this: oadd.org.apache.drill.exec.cache.VectorSerializer$Writer;
v = v.<oadd.org.apache.drill.exec.cache.VectorSerializer$Writer: java.nio.channels.WritableByteChannel channel>;
v = interfaceinvoke v.<java.nio.channels.WritableByteChannel: boolean isOpen()>();
if v != 0 goto label;
return;
label:
v = v.<oadd.org.apache.drill.exec.cache.VectorSerializer$Writer: java.nio.channels.WritableByteChannel channel>;
interfaceinvoke v.<java.nio.channels.WritableByteChannel: void close()>();
return;
}
public long time(java.util.concurrent.TimeUnit)
{
java.util.concurrent.TimeUnit v, v;
oadd.org.apache.drill.exec.cache.VectorSerializer$Writer v;
long v, v;
v := @this: oadd.org.apache.drill.exec.cache.VectorSerializer$Writer;
v := @parameter: java.util.concurrent.TimeUnit;
v = v.<oadd.org.apache.drill.exec.cache.VectorSerializer$Writer: long timeNs>;
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit NANOSECONDS>;
v = virtualinvoke v.<java.util.concurrent.TimeUnit: long convert(long,java.util.concurrent.TimeUnit)>(v, v);
return v;
}
public int getBytesWritten()
{
int v;
oadd.org.apache.drill.exec.cache.VectorSerializer$Writer v;
v := @this: oadd.org.apache.drill.exec.cache.VectorSerializer$Writer;
v = v.<oadd.org.apache.drill.exec.cache.VectorSerializer$Writer: int bytesWritten>;
return v;
}
static void <clinit>()
{
java.lang.String[] v;
java.lang.String v;
oadd.com.codahale.metrics.MetricRegistry v;
v = staticinvoke <oadd.org.apache.drill.exec.metrics.DrillMetrics: oadd.com.codahale.metrics.MetricRegistry getRegistry()>();
<oadd.org.apache.drill.exec.cache.VectorSerializer$Writer: oadd.com.codahale.metrics.MetricRegistry metrics> = v;
v = newarray (java.lang.String)[1];
v[0] = "writerTime";
v = staticinvoke <oadd.com.codahale.metrics.MetricRegistry: java.lang.String name(java.lang.Class,java.lang.String[])>(class "Loadd/org/apache/drill/exec/cache/VectorAccessibleSerializable;", v);
<oadd.org.apache.drill.exec.cache.VectorSerializer$Writer: java.lang.String WRITER_TIMER> = v;
return;
}
}