public class org.apache.activemq.leveldb.RecordLog$LogReader extends org.fusesource.hawtdispatch.BaseRetained implements scala.Product, scala.Serializable
{
private final java.io.File file;
private final long position;
private final java.io.RandomAccessFile fd;
private final java.nio.channels.FileChannel channel;
public final org.apache.activemq.leveldb.RecordLog $outer;
public java.io.File file()
{
org.apache.activemq.leveldb.RecordLog$LogReader v;
java.io.File v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
v = v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.io.File file>;
return v;
}
public long position()
{
long v;
org.apache.activemq.leveldb.RecordLog$LogReader v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
v = v.<org.apache.activemq.leveldb.RecordLog$LogReader: long position>;
return v;
}
public java.io.RandomAccessFile open()
{
java.io.RandomAccessFile v;
org.apache.activemq.leveldb.RecordLog$LogReader v;
java.io.File v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
v = new java.io.RandomAccessFile;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.io.File file()>();
specialinvoke v.<java.io.RandomAccessFile: void <init>(java.io.File,java.lang.String)>(v, "r");
return v;
}
public java.io.RandomAccessFile fd()
{
java.io.RandomAccessFile v;
org.apache.activemq.leveldb.RecordLog$LogReader v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
v = v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.io.RandomAccessFile fd>;
return v;
}
public java.nio.channels.FileChannel channel()
{
org.apache.activemq.leveldb.RecordLog$LogReader v;
java.nio.channels.FileChannel v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
v = v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.nio.channels.FileChannel channel>;
return v;
}
public void dispose()
{
java.io.RandomAccessFile v;
org.apache.activemq.leveldb.RecordLog$LogReader v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: void on_close()>();
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.io.RandomAccessFile fd()>();
virtualinvoke v.<java.io.RandomAccessFile: void close()>();
return;
}
public void on_close()
{
org.apache.activemq.leveldb.RecordLog$LogReader v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
return;
}
public void check_read_flush(long)
{
long v;
org.apache.activemq.leveldb.RecordLog$LogReader v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
v := @parameter: long;
return;
}
public org.fusesource.hawtbuf.Buffer read(long, int)
{
org.apache.activemq.leveldb.RecordLog$ v, v, v, v;
org.apache.activemq.leveldb.RecordLog v, v;
byte v, v, v;
java.lang.Long v, v, v, v, v, v, v, v;
scala.collection.immutable.StringOps v, v;
java.lang.Object[] v, v;
long v, v, v, v, v, v;
org.fusesource.hawtbuf.Buffer v, v, v, v;
scala.collection.mutable.StringBuilder v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.String v, v, v, v, v, v, v;
scala.collection.mutable.WrappedArray v, v;
java.io.IOException v, v, v, v;
java.io.File v, v, v, v, v;
java.nio.ByteBuffer v, v;
boolean v, v, v, v, v, v;
java.io.EOFException v;
org.fusesource.hawtbuf.DataByteArrayInputStream v;
scala.Predef$ v, v, v, v, v, v, v, v;
int v, v, v, v, v, v, v, v, v, v, v;
org.apache.activemq.leveldb.RecordLog$LogReader v;
java.nio.channels.FileChannel v, v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
v := @parameter: long;
v := @parameter: int;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: long position()>();
v = v - v;
v = <scala.Predef$: scala.Predef$ MODULE$>;
v = v cmp 0L;
if v < 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
virtualinvoke v.<scala.Predef$: void assert(boolean)>(v);
v = <org.apache.activemq.leveldb.RecordLog$: org.apache.activemq.leveldb.RecordLog$ MODULE$>;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$: int LOG_HEADER_SIZE()>();
v = v + v;
v = v + v;
virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: void check_read_flush(long)>(v);
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: org.apache.activemq.leveldb.RecordLog org$apache$activemq$leveldb$RecordLog$LogReader$$$outer()>();
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog: boolean verify_checksums()>();
if v == 0 goto label;
v = new org.fusesource.hawtbuf.Buffer;
v = <org.apache.activemq.leveldb.RecordLog$: org.apache.activemq.leveldb.RecordLog$ MODULE$>;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$: int LOG_HEADER_SIZE()>();
v = v + v;
specialinvoke v.<org.fusesource.hawtbuf.Buffer: void <init>(int)>(v);
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.nio.channels.FileChannel channel()>();
v = virtualinvoke v.<org.fusesource.hawtbuf.Buffer: java.nio.ByteBuffer toByteBuffer()>();
v = virtualinvoke v.<java.nio.channels.FileChannel: int read(java.nio.ByteBuffer,long)>(v, v);
v = v.<org.fusesource.hawtbuf.Buffer: int length>;
if v == v goto label;
v = <scala.Predef$: scala.Predef$ MODULE$>;
v = specialinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: boolean record_is_not_changing$1(int,long,org.fusesource.hawtbuf.Buffer)>(v, v, v);
virtualinvoke v.<scala.Predef$: void assert(boolean)>(v);
v = new java.io.IOException;
v = new scala.collection.mutable.StringBuilder;
specialinvoke v.<scala.collection.mutable.StringBuilder: void <init>()>();
v = virtualinvoke v.<scala.collection.mutable.StringBuilder: scala.collection.mutable.StringBuilder append(java.lang.Object)>("short record at position: ");
v = staticinvoke <scala.runtime.BoxesRunTime: java.lang.Long boxToLong(long)>(v);
v = virtualinvoke v.<scala.collection.mutable.StringBuilder: scala.collection.mutable.StringBuilder append(java.lang.Object)>(v);
v = virtualinvoke v.<scala.collection.mutable.StringBuilder: scala.collection.mutable.StringBuilder append(java.lang.Object)>(" in file: ");
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.io.File file()>();
v = virtualinvoke v.<scala.collection.mutable.StringBuilder: scala.collection.mutable.StringBuilder append(java.lang.Object)>(v);
v = virtualinvoke v.<scala.collection.mutable.StringBuilder: scala.collection.mutable.StringBuilder append(java.lang.Object)>(", offset: ");
v = staticinvoke <scala.runtime.BoxesRunTime: java.lang.Long boxToLong(long)>(v);
v = virtualinvoke v.<scala.collection.mutable.StringBuilder: scala.collection.mutable.StringBuilder append(java.lang.Object)>(v);
v = virtualinvoke v.<scala.collection.mutable.StringBuilder: java.lang.String toString()>();
specialinvoke v.<java.io.IOException: void <init>(java.lang.String)>(v);
throw v;
label:
v = new org.fusesource.hawtbuf.DataByteArrayInputStream;
specialinvoke v.<org.fusesource.hawtbuf.DataByteArrayInputStream: void <init>(org.fusesource.hawtbuf.Buffer)>(v);
v = virtualinvoke v.<org.fusesource.hawtbuf.DataByteArrayInputStream: byte readByte()>();
v = <org.apache.activemq.leveldb.RecordLog$: org.apache.activemq.leveldb.RecordLog$ MODULE$>;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$: byte LOG_HEADER_PREFIX()>();
if v == v goto label;
v = <scala.Predef$: scala.Predef$ MODULE$>;
v = specialinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: boolean record_is_not_changing$1(int,long,org.fusesource.hawtbuf.Buffer)>(v, v, v);
virtualinvoke v.<scala.Predef$: void assert(boolean)>(v);
v = new java.io.IOException;
v = new scala.collection.mutable.StringBuilder;
specialinvoke v.<scala.collection.mutable.StringBuilder: void <init>()>();
v = virtualinvoke v.<scala.collection.mutable.StringBuilder: scala.collection.mutable.StringBuilder append(java.lang.Object)>("invalid record at position: ");
v = staticinvoke <scala.runtime.BoxesRunTime: java.lang.Long boxToLong(long)>(v);
v = virtualinvoke v.<scala.collection.mutable.StringBuilder: scala.collection.mutable.StringBuilder append(java.lang.Object)>(v);
v = virtualinvoke v.<scala.collection.mutable.StringBuilder: scala.collection.mutable.StringBuilder append(java.lang.Object)>(" in file: ");
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.io.File file()>();
v = virtualinvoke v.<scala.collection.mutable.StringBuilder: scala.collection.mutable.StringBuilder append(java.lang.Object)>(v);
v = virtualinvoke v.<scala.collection.mutable.StringBuilder: scala.collection.mutable.StringBuilder append(java.lang.Object)>(", offset: ");
v = staticinvoke <scala.runtime.BoxesRunTime: java.lang.Long boxToLong(long)>(v);
v = virtualinvoke v.<scala.collection.mutable.StringBuilder: scala.collection.mutable.StringBuilder append(java.lang.Object)>(v);
v = virtualinvoke v.<scala.collection.mutable.StringBuilder: java.lang.String toString()>();
specialinvoke v.<java.io.IOException: void <init>(java.lang.String)>(v);
throw v;
label:
virtualinvoke v.<org.fusesource.hawtbuf.DataByteArrayInputStream: byte readByte()>();
v = virtualinvoke v.<org.fusesource.hawtbuf.DataByteArrayInputStream: int readInt()>();
v = virtualinvoke v.<org.fusesource.hawtbuf.DataByteArrayInputStream: int readInt()>();
v = virtualinvoke v.<org.fusesource.hawtbuf.DataByteArrayInputStream: org.fusesource.hawtbuf.Buffer readBuffer(int)>(v);
if v != v goto label;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: org.apache.activemq.leveldb.RecordLog org$apache$activemq$leveldb$RecordLog$LogReader$$$outer()>();
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog: int checksum(org.fusesource.hawtbuf.Buffer)>(v);
if v == v goto label;
v = <scala.Predef$: scala.Predef$ MODULE$>;
v = specialinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: boolean record_is_not_changing$1(int,long,org.fusesource.hawtbuf.Buffer)>(v, v, v);
virtualinvoke v.<scala.Predef$: void assert(boolean)>(v);
v = new java.io.IOException;
v = new scala.collection.mutable.StringBuilder;
specialinvoke v.<scala.collection.mutable.StringBuilder: void <init>()>();
v = virtualinvoke v.<scala.collection.mutable.StringBuilder: scala.collection.mutable.StringBuilder append(java.lang.Object)>("checksum does not match at position: ");
v = staticinvoke <scala.runtime.BoxesRunTime: java.lang.Long boxToLong(long)>(v);
v = virtualinvoke v.<scala.collection.mutable.StringBuilder: scala.collection.mutable.StringBuilder append(java.lang.Object)>(v);
v = virtualinvoke v.<scala.collection.mutable.StringBuilder: scala.collection.mutable.StringBuilder append(java.lang.Object)>(" in file: ");
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.io.File file()>();
v = virtualinvoke v.<scala.collection.mutable.StringBuilder: scala.collection.mutable.StringBuilder append(java.lang.Object)>(v);
v = virtualinvoke v.<scala.collection.mutable.StringBuilder: scala.collection.mutable.StringBuilder append(java.lang.Object)>(", offset: ");
v = staticinvoke <scala.runtime.BoxesRunTime: java.lang.Long boxToLong(long)>(v);
v = virtualinvoke v.<scala.collection.mutable.StringBuilder: scala.collection.mutable.StringBuilder append(java.lang.Object)>(v);
v = virtualinvoke v.<scala.collection.mutable.StringBuilder: java.lang.String toString()>();
specialinvoke v.<java.io.IOException: void <init>(java.lang.String)>(v);
throw v;
label:
v = v;
goto label;
label:
v = new org.fusesource.hawtbuf.Buffer;
specialinvoke v.<org.fusesource.hawtbuf.Buffer: void <init>(int)>(v);
v = virtualinvoke v.<org.fusesource.hawtbuf.Buffer: java.nio.ByteBuffer toByteBuffer()>();
v = <org.apache.activemq.leveldb.RecordLog$: org.apache.activemq.leveldb.RecordLog$ MODULE$>;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$: int LOG_HEADER_SIZE()>();
v = v + v;
label:
v = virtualinvoke v.<java.nio.ByteBuffer: boolean hasRemaining()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.nio.channels.FileChannel channel()>();
v = virtualinvoke v.<java.nio.channels.FileChannel: int read(java.nio.ByteBuffer,long)>(v, v);
if v != 0 goto label;
v = new java.io.IOException;
v = new scala.collection.immutable.StringOps;
v = <scala.Predef$: scala.Predef$ MODULE$>;
v = virtualinvoke v.<scala.Predef$: java.lang.String augmentString(java.lang.String)>("zero read at file \'%s\' offset: %d");
specialinvoke v.<scala.collection.immutable.StringOps: void <init>(java.lang.String)>(v);
v = <scala.Predef$: scala.Predef$ MODULE$>;
v = newarray (java.lang.Object)[2];
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.io.File file()>();
v[0] = v;
v = staticinvoke <scala.runtime.BoxesRunTime: java.lang.Long boxToLong(long)>(v);
v[1] = v;
v = virtualinvoke v.<scala.Predef$: scala.collection.mutable.WrappedArray genericWrapArray(java.lang.Object)>(v);
v = virtualinvoke v.<scala.collection.immutable.StringOps: java.lang.String format(scala.collection.Seq)>(v);
specialinvoke v.<java.io.IOException: void <init>(java.lang.String)>(v);
throw v;
label:
if v >= 0 goto label;
v = new java.io.EOFException;
v = new scala.collection.immutable.StringOps;
v = <scala.Predef$: scala.Predef$ MODULE$>;
v = virtualinvoke v.<scala.Predef$: java.lang.String augmentString(java.lang.String)>("File \'%s\' offset: %d");
specialinvoke v.<scala.collection.immutable.StringOps: void <init>(java.lang.String)>(v);
v = <scala.Predef$: scala.Predef$ MODULE$>;
v = newarray (java.lang.Object)[2];
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.io.File file()>();
v[0] = v;
v = staticinvoke <scala.runtime.BoxesRunTime: java.lang.Long boxToLong(long)>(v);
v[1] = v;
v = virtualinvoke v.<scala.Predef$: scala.collection.mutable.WrappedArray genericWrapArray(java.lang.Object)>(v);
v = virtualinvoke v.<scala.collection.immutable.StringOps: java.lang.String format(scala.collection.Seq)>(v);
specialinvoke v.<java.io.EOFException: void <init>(java.lang.String)>(v);
throw v;
label:
v = v + v;
goto label;
label:
v = v;
label:
return v;
}
public scala.Tuple read(long)
{
org.apache.activemq.leveldb.RecordLog$ v, v, v, v, v, v;
org.apache.activemq.leveldb.RecordLog v, v;
java.nio.ByteBuffer v, v;
byte v, v, v;
java.lang.Long v, v, v;
java.lang.Byte v;
boolean v;
scala.Tuple v;
org.fusesource.hawtbuf.BufferEditor v;
scala.collection.immutable.StringOps v;
java.lang.Object[] v;
long v, v, v, v, v, v, v, v, v;
org.fusesource.hawtbuf.Buffer v, v;
scala.Predef$ v, v;
int v, v, v, v, v, v, v, v, v;
java.lang.String v, v, v;
scala.collection.mutable.WrappedArray v;
java.io.IOException v, v, v;
org.apache.activemq.leveldb.RecordLog$LogReader v;
java.io.File v;
java.nio.channels.FileChannel v, v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
v := @parameter: long;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: long position()>();
v = v - v;
v = new org.fusesource.hawtbuf.Buffer;
v = <org.apache.activemq.leveldb.RecordLog$: org.apache.activemq.leveldb.RecordLog$ MODULE$>;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$: int LOG_HEADER_SIZE()>();
specialinvoke v.<org.fusesource.hawtbuf.Buffer: void <init>(int)>(v);
v = <org.apache.activemq.leveldb.RecordLog$: org.apache.activemq.leveldb.RecordLog$ MODULE$>;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$: int LOG_HEADER_SIZE()>();
v = v + v;
virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: void check_read_flush(long)>(v);
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.nio.channels.FileChannel channel()>();
v = virtualinvoke v.<org.fusesource.hawtbuf.Buffer: java.nio.ByteBuffer toByteBuffer()>();
virtualinvoke v.<java.nio.channels.FileChannel: int read(java.nio.ByteBuffer,long)>(v, v);
v = virtualinvoke v.<org.fusesource.hawtbuf.Buffer: org.fusesource.hawtbuf.BufferEditor bigEndianEditor()>();
v = virtualinvoke v.<org.fusesource.hawtbuf.BufferEditor: byte readByte()>();
v = <org.apache.activemq.leveldb.RecordLog$: org.apache.activemq.leveldb.RecordLog$ MODULE$>;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$: byte LOG_HEADER_PREFIX()>();
if v == v goto label;
v = new java.io.IOException;
v = new scala.collection.immutable.StringOps;
v = <scala.Predef$: scala.Predef$ MODULE$>;
v = virtualinvoke v.<scala.Predef$: java.lang.String augmentString(java.lang.String)>("invalid record position %d (file: %s, offset: %d)");
specialinvoke v.<scala.collection.immutable.StringOps: void <init>(java.lang.String)>(v);
v = <scala.Predef$: scala.Predef$ MODULE$>;
v = newarray (java.lang.Object)[3];
v = staticinvoke <scala.runtime.BoxesRunTime: java.lang.Long boxToLong(long)>(v);
v[0] = v;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.io.File file()>();
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
v[1] = v;
v = staticinvoke <scala.runtime.BoxesRunTime: java.lang.Long boxToLong(long)>(v);
v[2] = v;
v = virtualinvoke v.<scala.Predef$: scala.collection.mutable.WrappedArray genericWrapArray(java.lang.Object)>(v);
v = virtualinvoke v.<scala.collection.immutable.StringOps: java.lang.String format(scala.collection.Seq)>(v);
specialinvoke v.<java.io.IOException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<org.fusesource.hawtbuf.BufferEditor: byte readByte()>();
v = virtualinvoke v.<org.fusesource.hawtbuf.BufferEditor: int readInt()>();
v = virtualinvoke v.<org.fusesource.hawtbuf.BufferEditor: int readInt()>();
v = new org.fusesource.hawtbuf.Buffer;
specialinvoke v.<org.fusesource.hawtbuf.Buffer: void <init>(int)>(v);
v = <org.apache.activemq.leveldb.RecordLog$: org.apache.activemq.leveldb.RecordLog$ MODULE$>;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$: int LOG_HEADER_SIZE()>();
v = v + v;
v = v + v;
virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: void check_read_flush(long)>(v);
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.nio.channels.FileChannel channel()>();
v = virtualinvoke v.<org.fusesource.hawtbuf.Buffer: java.nio.ByteBuffer toByteBuffer()>();
v = <org.apache.activemq.leveldb.RecordLog$: org.apache.activemq.leveldb.RecordLog$ MODULE$>;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$: int LOG_HEADER_SIZE()>();
v = v + v;
v = virtualinvoke v.<java.nio.channels.FileChannel: int read(java.nio.ByteBuffer,long)>(v, v);
if v == v goto label;
v = new java.io.IOException;
specialinvoke v.<java.io.IOException: void <init>(java.lang.String)>("short record");
throw v;
label:
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: org.apache.activemq.leveldb.RecordLog org$apache$activemq$leveldb$RecordLog$LogReader$$$outer()>();
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog: boolean verify_checksums()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: org.apache.activemq.leveldb.RecordLog org$apache$activemq$leveldb$RecordLog$LogReader$$$outer()>();
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog: int checksum(org.fusesource.hawtbuf.Buffer)>(v);
if v == v goto label;
v = new java.io.IOException;
specialinvoke v.<java.io.IOException: void <init>(java.lang.String)>("checksum does not match");
throw v;
label:
v = new scala.Tuple;
v = staticinvoke <scala.runtime.BoxesRunTime: java.lang.Byte boxToByte(byte)>(v);
v = <org.apache.activemq.leveldb.RecordLog$: org.apache.activemq.leveldb.RecordLog$ MODULE$>;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$: int LOG_HEADER_SIZE()>();
v = v + v;
v = v + v;
v = staticinvoke <scala.runtime.BoxesRunTime: java.lang.Long boxToLong(long)>(v);
specialinvoke v.<scala.Tuple3: void <init>(java.lang.Object,java.lang.Object,java.lang.Object)>(v, v, v);
return v;
}
public scala.Option check(long)
{
org.apache.activemq.leveldb.RecordLog$ v, v, v, v, v, v;
byte[] v;
java.nio.ByteBuffer v, v;
byte v, v, v, v;
java.lang.Long v, v;
boolean v;
scala.Some v, v;
scala.Tuple v;
org.fusesource.hawtbuf.BufferEditor v;
long v, v, v, v, v, v, v, v, v;
org.fusesource.hawtbuf.Buffer v, v;
scala.runtime.RichInt$ v;
scala.Predef$ v;
int v, v, v, v, v, v, v, v;
org.apache.activemq.leveldb.RecordLog$LogReader v;
scala.None$ v, v, v;
java.util.zip.CRC32 v;
java.lang.Object v;
java.nio.channels.FileChannel v, v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
v := @parameter: long;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: long position()>();
v = v - v;
v = new org.fusesource.hawtbuf.Buffer;
v = <org.apache.activemq.leveldb.RecordLog$: org.apache.activemq.leveldb.RecordLog$ MODULE$>;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$: int LOG_HEADER_SIZE()>();
specialinvoke v.<org.fusesource.hawtbuf.Buffer: void <init>(int)>(v);
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.nio.channels.FileChannel channel()>();
v = virtualinvoke v.<org.fusesource.hawtbuf.Buffer: java.nio.ByteBuffer toByteBuffer()>();
virtualinvoke v.<java.nio.channels.FileChannel: int read(java.nio.ByteBuffer,long)>(v, v);
v = virtualinvoke v.<org.fusesource.hawtbuf.Buffer: org.fusesource.hawtbuf.BufferEditor bigEndianEditor()>();
v = virtualinvoke v.<org.fusesource.hawtbuf.BufferEditor: byte readByte()>();
v = <org.apache.activemq.leveldb.RecordLog$: org.apache.activemq.leveldb.RecordLog$ MODULE$>;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$: byte LOG_HEADER_PREFIX()>();
if v == v goto label;
v = <scala.None$: scala.None$ MODULE$>;
return v;
label:
v = virtualinvoke v.<org.fusesource.hawtbuf.BufferEditor: byte readByte()>();
v = virtualinvoke v.<org.fusesource.hawtbuf.BufferEditor: int readInt()>();
v = virtualinvoke v.<org.fusesource.hawtbuf.BufferEditor: int readInt()>();
v = new org.fusesource.hawtbuf.Buffer;
specialinvoke v.<org.fusesource.hawtbuf.Buffer: void <init>(int)>(4096);
v = virtualinvoke v.<org.fusesource.hawtbuf.Buffer: java.nio.ByteBuffer toByteBuffer()>();
v = <org.apache.activemq.leveldb.RecordLog$: org.apache.activemq.leveldb.RecordLog$ MODULE$>;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$: int LOG_HEADER_SIZE()>();
v = v + v;
v = new java.util.zip.CRC32;
specialinvoke v.<java.util.zip.CRC32: void <init>()>();
v = v;
label:
if v <= 0 goto label;
v = <scala.runtime.RichInt$: scala.runtime.RichInt$ MODULE$>;
v = <scala.Predef$: scala.Predef$ MODULE$>;
v = virtualinvoke v.<scala.Predef$: int intWrapper(int)>(v);
v = virtualinvoke v.<scala.runtime.RichInt$: int min$extension(int,int)>(v, 4096);
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer position(int)>(0);
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer limit(int)>(v);
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.nio.channels.FileChannel channel()>();
virtualinvoke v.<java.nio.channels.FileChannel: int read(java.nio.ByteBuffer,long)>(v, v);
v = virtualinvoke v.<java.nio.ByteBuffer: boolean hasRemaining()>();
if v == 0 goto label;
v = <scala.None$: scala.None$ MODULE$>;
return v;
label:
v = v.<org.fusesource.hawtbuf.Buffer: byte[] data>;
virtualinvoke v.<java.util.zip.CRC32: void update(byte[],int,int)>(v, 0, v);
v = v + v;
v = v - v;
goto label;
label:
v = virtualinvoke v.<java.util.zip.CRC32: long getValue()>();
v = v & -1L;
if v == v goto label;
v = <scala.None$: scala.None$ MODULE$>;
return v;
label:
v = <org.apache.activemq.leveldb.RecordLog$: org.apache.activemq.leveldb.RecordLog$ MODULE$>;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$: byte UOW_END_RECORD()>();
if v != v goto label;
if v != 8 goto label;
v = new scala.Some;
v = v;
v = <org.apache.activemq.leveldb.RecordLog$: org.apache.activemq.leveldb.RecordLog$ MODULE$>;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$: long decode_long(org.fusesource.hawtbuf.Buffer)>(v);
v = staticinvoke <scala.runtime.BoxesRunTime: java.lang.Long boxToLong(long)>(v);
specialinvoke v.<scala.Some: void <init>(java.lang.Object)>(v);
goto label;
label:
v = <scala.None$: scala.None$ MODULE$>;
label:
v = new scala.Some;
v = new scala.Tuple;
v = <org.apache.activemq.leveldb.RecordLog$: org.apache.activemq.leveldb.RecordLog$ MODULE$>;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$: int LOG_HEADER_SIZE()>();
v = v + v;
v = v + v;
v = staticinvoke <scala.runtime.BoxesRunTime: java.lang.Long boxToLong(long)>(v);
specialinvoke v.<scala.Tuple2: void <init>(java.lang.Object,java.lang.Object)>(v, v);
specialinvoke v.<scala.Some: void <init>(java.lang.Object)>(v);
return v;
}
public long verifyAndGetEndOffset()
{
long v, v, v, v, v, v, v, v, v, v, v;
byte v;
boolean v, v;
scala.MatchError v;
scala.runtime.BoxedUnit v;
org.apache.activemq.leveldb.RecordLog$LogReader v;
scala.Option v;
scala.None$ v;
scala.runtime.LongRef v;
java.lang.Object v, v, v;
java.nio.channels.FileChannel v;
org.apache.activemq.leveldb.RecordLog$LogReader$$anonfun$verifyAndGetEndOffset$1 v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
v = new java.lang.Object;
specialinvoke v.<java.lang.Object: void <init>()>();
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: long position()>();
v = staticinvoke <scala.runtime.LongRef: scala.runtime.LongRef create(long)>(v);
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: long position()>();
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.nio.channels.FileChannel channel()>();
v = virtualinvoke v.<java.nio.channels.FileChannel: long size()>();
v = v + v;
label:
v = v cmp v;
if v >= 0 goto label;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: scala.Option check(long)>(v);
v = v instanceof scala.Some;
if v == 0 goto label;
v = virtualinvoke v.<scala.Some: java.lang.Object x()>();
if v == null goto label;
v = virtualinvoke v.<scala.Tuple2: long _1$mcJ$sp()>();
v = virtualinvoke v.<scala.Tuple2: java.lang.Object _2()>();
v = new org.apache.activemq.leveldb.RecordLog$LogReader$$anonfun$verifyAndGetEndOffset$1;
specialinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader$$anonfun$verifyAndGetEndOffset$1: void <init>(org.apache.activemq.leveldb.RecordLog$LogReader,scala.runtime.LongRef,long,java.lang.Object)>(v, v, v, v);
virtualinvoke v.<scala.Option: void foreach(scala.Function)>(v);
v = v;
v = <scala.runtime.BoxedUnit: scala.runtime.BoxedUnit UNIT>;
goto label;
label:
v = <scala.None$: scala.None$ MODULE$>;
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = v.<scala.runtime.LongRef: long elem>;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: long position()>();
v = v - v;
return v;
label:
v = new scala.MatchError;
specialinvoke v.<scala.MatchError: void <init>(java.lang.Object)>(v);
throw v;
label:
v = v.<scala.runtime.LongRef: long elem>;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: long position()>();
v = v - v;
return v;
}
public org.apache.activemq.leveldb.RecordLog$LogReader copy(java.io.File, long)
{
org.apache.activemq.leveldb.RecordLog v;
long v;
org.apache.activemq.leveldb.RecordLog$LogReader v, v;
java.io.File v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
v := @parameter: java.io.File;
v := @parameter: long;
v = new org.apache.activemq.leveldb.RecordLog$LogReader;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: org.apache.activemq.leveldb.RecordLog org$apache$activemq$leveldb$RecordLog$LogReader$$$outer()>();
specialinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: void <init>(org.apache.activemq.leveldb.RecordLog,java.io.File,long)>(v, v, v);
return v;
}
public java.io.File copy$default$1()
{
org.apache.activemq.leveldb.RecordLog$LogReader v;
java.io.File v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.io.File file()>();
return v;
}
public long copy$default$2()
{
long v;
org.apache.activemq.leveldb.RecordLog$LogReader v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: long position()>();
return v;
}
public java.lang.String productPrefix()
{
org.apache.activemq.leveldb.RecordLog$LogReader v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
return "LogReader";
}
public int productArity()
{
org.apache.activemq.leveldb.RecordLog$LogReader v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
return 2;
}
public java.lang.Object productElement(int)
{
java.lang.IndexOutOfBoundsException v;
int v;
java.lang.Comparable v;
long v;
java.lang.String v;
org.apache.activemq.leveldb.RecordLog$LogReader v;
java.lang.Integer v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
v := @parameter: int;
tableswitch(v)
{
case 0: goto label;
case 1: goto label;
default: goto label;
};
label:
v = new java.lang.IndexOutOfBoundsException;
v = staticinvoke <scala.runtime.BoxesRunTime: java.lang.Integer boxToInteger(int)>(v);
v = virtualinvoke v.<java.lang.Object: java.lang.String toString()>();
specialinvoke v.<java.lang.IndexOutOfBoundsException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: long position()>();
v = staticinvoke <scala.runtime.BoxesRunTime: java.lang.Long boxToLong(long)>(v);
goto label;
label:
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.io.File file()>();
label:
return v;
}
public scala.collection.Iterator productIterator()
{
scala.runtime.ScalaRunTime$ v;
org.apache.activemq.leveldb.RecordLog$LogReader v;
scala.collection.Iterator v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
v = <scala.runtime.ScalaRunTime$: scala.runtime.ScalaRunTime$ MODULE$>;
v = virtualinvoke v.<scala.runtime.ScalaRunTime$: scala.collection.Iterator typedProductIterator(scala.Product)>(v);
return v;
}
public boolean canEqual(java.lang.Object)
{
java.lang.Object v;
org.apache.activemq.leveldb.RecordLog$LogReader v;
boolean v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
v := @parameter: java.lang.Object;
v = v instanceof org.apache.activemq.leveldb.RecordLog$LogReader;
return v;
}
public int hashCode()
{
long v;
org.apache.activemq.leveldb.RecordLog$LogReader v;
java.io.File v;
int v, v, v, v, v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.io.File file()>();
v = staticinvoke <scala.runtime.Statics: int anyHash(java.lang.Object)>(v);
v = staticinvoke <scala.runtime.Statics: int mix(int,int)>(-889275714, v);
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: long position()>();
v = staticinvoke <scala.runtime.Statics: int longHash(long)>(v);
v = staticinvoke <scala.runtime.Statics: int mix(int,int)>(v, v);
v = staticinvoke <scala.runtime.Statics: int finalizeHash(int,int)>(v, 2);
return v;
}
public java.lang.String toString()
{
scala.runtime.ScalaRunTime$ v;
java.lang.String v;
org.apache.activemq.leveldb.RecordLog$LogReader v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
v = <scala.runtime.ScalaRunTime$: scala.runtime.ScalaRunTime$ MODULE$>;
v = virtualinvoke v.<scala.runtime.ScalaRunTime$: java.lang.String _toString(scala.Product)>(v);
return v;
}
public boolean equals(java.lang.Object)
{
org.apache.activemq.leveldb.RecordLog v, v;
long v, v;
org.apache.activemq.leveldb.RecordLog$LogReader v;
java.io.File v, v;
byte v;
java.lang.Object v;
boolean v, v, v, v, v, v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
v := @parameter: java.lang.Object;
if v == v goto label;
v = v instanceof org.apache.activemq.leveldb.RecordLog$LogReader;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: org.apache.activemq.leveldb.RecordLog org$apache$activemq$leveldb$RecordLog$LogReader$$$outer()>();
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: org.apache.activemq.leveldb.RecordLog org$apache$activemq$leveldb$RecordLog$LogReader$$$outer()>();
if v != v goto label;
v = 1;
goto label;
label:
v = 0;
label:
if v == 0 goto label;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.io.File file()>();
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.io.File file()>();
if v != null goto label;
if v == null goto label;
goto label;
label:
v = virtualinvoke v.<java.lang.Object: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
label:
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: long position()>();
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: long position()>();
v = v cmp v;
if v != 0 goto label;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: boolean canEqual(java.lang.Object)>(v);
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
if v == 0 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
private final boolean record_is_not_changing$1(int, long, org.fusesource.hawtbuf.Buffer)
{
java.io.RandomAccessFile v;
long v;
org.apache.activemq.leveldb.RecordLog$LogReader v;
org.fusesource.hawtbuf.Buffer v;
org.apache.activemq.leveldb.RecordLog$LogReader$$anonfun$record_is_not_changing$1$1 v;
int v;
java.lang.Object v;
org.apache.activemq.leveldb.util.FileSupport$ v;
boolean v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
v := @parameter: int;
v := @parameter: long;
v := @parameter: org.fusesource.hawtbuf.Buffer;
v = <org.apache.activemq.leveldb.util.FileSupport$: org.apache.activemq.leveldb.util.FileSupport$ MODULE$>;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.io.RandomAccessFile open()>();
v = new org.apache.activemq.leveldb.RecordLog$LogReader$$anonfun$record_is_not_changing$1$1;
specialinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader$$anonfun$record_is_not_changing$1$1: void <init>(org.apache.activemq.leveldb.RecordLog$LogReader,int,long,org.fusesource.hawtbuf.Buffer)>(v, v, v, v);
v = virtualinvoke v.<org.apache.activemq.leveldb.util.FileSupport$: java.lang.Object using(java.io.Closeable,scala.Function)>(v, v);
v = staticinvoke <scala.runtime.BoxesRunTime: boolean unboxToBoolean(java.lang.Object)>(v);
return v;
}
public void <init>(org.apache.activemq.leveldb.RecordLog, java.io.File, long)
{
java.io.RandomAccessFile v, v;
org.apache.activemq.leveldb.RecordLog v;
long v;
org.apache.activemq.leveldb.RecordLog$LogReader v;
java.nio.channels.FileChannel v;
java.io.File v;
v := @this: org.apache.activemq.leveldb.RecordLog$LogReader;
v := @parameter: org.apache.activemq.leveldb.RecordLog;
v := @parameter: java.io.File;
v := @parameter: long;
v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.io.File file> = v;
v.<org.apache.activemq.leveldb.RecordLog$LogReader: long position> = v;
if v != null goto label;
throw null;
label:
v.<org.apache.activemq.leveldb.RecordLog$LogReader: org.apache.activemq.leveldb.RecordLog $outer> = v;
specialinvoke v.<org.fusesource.hawtdispatch.BaseRetained: void <init>()>();
staticinvoke <scala.Product$class: void $init$(scala.Product)>(v);
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.io.RandomAccessFile open()>();
v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.io.RandomAccessFile fd> = v;
v = virtualinvoke v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.io.RandomAccessFile fd()>();
v = virtualinvoke v.<java.io.RandomAccessFile: java.nio.channels.FileChannel getChannel()>();
v.<org.apache.activemq.leveldb.RecordLog$LogReader: java.nio.channels.FileChannel channel> = v;
return;
}
}