class org.apache.activemq.store.kahadb.disk.page.Transaction$2 extends java.io.InputStream
{
private org.apache.activemq.util.ByteSequence chunk;
private org.apache.activemq.store.kahadb.disk.page.Page page;
private int pageCount;
private org.apache.activemq.store.kahadb.disk.page.Page markPage;
private org.apache.activemq.util.ByteSequence markChunk;
final org.apache.activemq.store.kahadb.disk.page.Page val$p;
final org.apache.activemq.store.kahadb.disk.page.Transaction this$0;
void <init>(org.apache.activemq.store.kahadb.disk.page.Transaction, org.apache.activemq.store.kahadb.disk.page.Page) throws java.io.IOException
{
byte[] v;
org.apache.activemq.store.kahadb.disk.page.Transaction$2 v;
org.apache.activemq.store.kahadb.disk.page.Page v, v, v;
int v;
org.apache.activemq.store.kahadb.disk.page.PageFile v;
org.apache.activemq.store.kahadb.disk.page.Transaction v, v;
org.apache.activemq.util.ByteSequence v;
v := @this: org.apache.activemq.store.kahadb.disk.page.Transaction$2;
v := @parameter: org.apache.activemq.store.kahadb.disk.page.Transaction;
v := @parameter: org.apache.activemq.store.kahadb.disk.page.Page;
v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.store.kahadb.disk.page.Transaction this$0> = v;
v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.store.kahadb.disk.page.Page val$p> = v;
specialinvoke v.<java.io.InputStream: void <init>()>();
v = new org.apache.activemq.util.ByteSequence;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.store.kahadb.disk.page.Transaction this$0>;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction: org.apache.activemq.store.kahadb.disk.page.PageFile pageFile>;
v = virtualinvoke v.<org.apache.activemq.store.kahadb.disk.page.PageFile: int getPageSize()>();
v = newarray (byte)[v];
specialinvoke v.<org.apache.activemq.util.ByteSequence: void <init>(byte[])>(v);
v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk> = v;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.store.kahadb.disk.page.Page val$p>;
v = specialinvoke v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.store.kahadb.disk.page.Page readPage(org.apache.activemq.store.kahadb.disk.page.Page)>(v);
v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.store.kahadb.disk.page.Page page> = v;
v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: int pageCount> = 1;
return;
}
private org.apache.activemq.store.kahadb.disk.page.Page readPage(org.apache.activemq.store.kahadb.disk.page.Page) throws java.io.IOException
{
byte[] v;
long v, v, v;
short v, v;
int v;
java.lang.String v;
org.apache.activemq.store.kahadb.disk.page.PageFile v, v;
org.apache.activemq.util.ByteSequence v, v, v, v, v, v;
org.apache.activemq.store.kahadb.disk.page.Transaction$2 v;
java.io.EOFException v;
org.apache.activemq.store.kahadb.disk.page.Page v;
org.apache.activemq.store.kahadb.disk.util.DataByteArrayInputStream v;
org.apache.activemq.store.kahadb.disk.page.Transaction v, v;
v := @this: org.apache.activemq.store.kahadb.disk.page.Transaction$2;
v := @parameter: org.apache.activemq.store.kahadb.disk.page.Page;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.store.kahadb.disk.page.Transaction this$0>;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction: org.apache.activemq.store.kahadb.disk.page.PageFile pageFile>;
v = virtualinvoke v.<org.apache.activemq.store.kahadb.disk.page.Page: long getPageId()>();
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
v = virtualinvoke v.<org.apache.activemq.util.ByteSequence: byte[] getData()>();
virtualinvoke v.<org.apache.activemq.store.kahadb.disk.page.PageFile: void readPage(long,byte[])>(v, v);
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
virtualinvoke v.<org.apache.activemq.util.ByteSequence: void setOffset(int)>(0);
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.store.kahadb.disk.page.Transaction this$0>;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction: org.apache.activemq.store.kahadb.disk.page.PageFile pageFile>;
v = virtualinvoke v.<org.apache.activemq.store.kahadb.disk.page.PageFile: int getPageSize()>();
virtualinvoke v.<org.apache.activemq.util.ByteSequence: void setLength(int)>(v);
v = new org.apache.activemq.store.kahadb.disk.util.DataByteArrayInputStream;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
specialinvoke v.<org.apache.activemq.store.kahadb.disk.util.DataByteArrayInputStream: void <init>(org.apache.activemq.util.ByteSequence)>(v);
virtualinvoke v.<org.apache.activemq.store.kahadb.disk.page.Page: void read(java.io.DataInput)>(v);
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
virtualinvoke v.<org.apache.activemq.util.ByteSequence: void setOffset(int)>(21);
v = virtualinvoke v.<org.apache.activemq.store.kahadb.disk.page.Page: short getType()>();
if v != 2 goto label;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
v = virtualinvoke v.<org.apache.activemq.store.kahadb.disk.page.Page: long getNext()>();
virtualinvoke v.<org.apache.activemq.util.ByteSequence: void setLength(int)>(v);
label:
v = virtualinvoke v.<org.apache.activemq.store.kahadb.disk.page.Page: short getType()>();
if v != 0 goto label;
v = new java.io.EOFException;
v = virtualinvoke v.<org.apache.activemq.store.kahadb.disk.page.Page: long getPageId()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (long)>(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[])>("Chunk stream does not exist, page: \u is marked free");
specialinvoke v.<java.io.EOFException: void <init>(java.lang.String)>(v);
throw v;
label:
return v;
}
public int read() throws java.io.IOException
{
byte[] v;
org.apache.activemq.store.kahadb.disk.page.Transaction$2 v;
short v;
byte v;
int v, v, v;
org.apache.activemq.util.ByteSequence v, v;
boolean v;
v := @this: org.apache.activemq.store.kahadb.disk.page.Transaction$2;
v = specialinvoke v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: boolean atEOF()>();
if v != 0 goto label;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
v = v.<org.apache.activemq.util.ByteSequence: byte[] data>;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
v = v.<org.apache.activemq.util.ByteSequence: int offset>;
v = v + 1;
v.<org.apache.activemq.util.ByteSequence: int offset> = v;
v = v[v];
v = v & 255;
return v;
label:
v = (int) -1;
return v;
}
private boolean atEOF() throws java.io.IOException
{
org.apache.activemq.store.kahadb.disk.page.Transaction$2 v;
org.apache.activemq.store.kahadb.disk.page.Page v;
short v;
int v, v, v, v;
org.apache.activemq.util.ByteSequence v, v, v, v;
boolean v;
v := @this: org.apache.activemq.store.kahadb.disk.page.Transaction$2;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
v = v.<org.apache.activemq.util.ByteSequence: int offset>;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
v = v.<org.apache.activemq.util.ByteSequence: int length>;
if v >= v goto label;
return 0;
label:
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.store.kahadb.disk.page.Page page>;
v = virtualinvoke v.<org.apache.activemq.store.kahadb.disk.page.Page: short getType()>();
if v != 2 goto label;
return 1;
label:
specialinvoke v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: void fill()>();
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
v = v.<org.apache.activemq.util.ByteSequence: int offset>;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
v = v.<org.apache.activemq.util.ByteSequence: int length>;
if v < v goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
private void fill() throws java.io.IOException
{
int v, v;
long v;
org.apache.activemq.store.kahadb.disk.page.Transaction$2 v;
org.apache.activemq.store.kahadb.disk.page.Page v, v, v;
v := @this: org.apache.activemq.store.kahadb.disk.page.Transaction$2;
v = new org.apache.activemq.store.kahadb.disk.page.Page;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.store.kahadb.disk.page.Page page>;
v = virtualinvoke v.<org.apache.activemq.store.kahadb.disk.page.Page: long getNext()>();
specialinvoke v.<org.apache.activemq.store.kahadb.disk.page.Page: void <init>(long)>(v);
v = specialinvoke v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.store.kahadb.disk.page.Page readPage(org.apache.activemq.store.kahadb.disk.page.Page)>(v);
v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.store.kahadb.disk.page.Page page> = v;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: int pageCount>;
v = v + 1;
v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: int pageCount> = v;
return;
}
public int read(byte[]) throws java.io.IOException
{
byte[] v;
int v, v;
org.apache.activemq.store.kahadb.disk.page.Transaction$2 v;
v := @this: org.apache.activemq.store.kahadb.disk.page.Transaction$2;
v := @parameter: byte[];
v = lengthof v;
v = virtualinvoke v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: int read(byte[],int,int)>(v, 0, v);
return v;
}
public int read(byte[], int, int) throws java.io.IOException
{
byte[] v, v;
int v, v, v, v, v, v, v, v, v, v;
org.apache.activemq.util.ByteSequence v, v, v, v, v;
boolean v, v;
org.apache.activemq.store.kahadb.disk.page.Transaction$2 v;
v := @this: org.apache.activemq.store.kahadb.disk.page.Transaction$2;
v := @parameter: byte[];
v := @parameter: int;
v := @parameter: int;
v = specialinvoke v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: boolean atEOF()>();
if v != 0 goto label;
v = 0;
label:
v = specialinvoke v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: boolean atEOF()>();
if v != 0 goto label;
if v >= v goto label;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
v = v.<org.apache.activemq.util.ByteSequence: int length>;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
v = v.<org.apache.activemq.util.ByteSequence: int offset>;
v = v - v;
v = staticinvoke <java.lang.Math: int min(int,int)>(v, v);
if v <= 0 goto label;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
v = v.<org.apache.activemq.util.ByteSequence: byte[] data>;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
v = v.<org.apache.activemq.util.ByteSequence: int offset>;
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, v, v, v, v);
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
v = v.<org.apache.activemq.util.ByteSequence: int offset>;
v = v + v;
v.<org.apache.activemq.util.ByteSequence: int offset> = v;
label:
v = v + v;
goto label;
label:
return v;
label:
v = (int) -1;
return v;
}
public long skip(long) throws java.io.IOException
{
long v, v;
org.apache.activemq.store.kahadb.disk.page.Transaction$2 v;
byte v, v;
int v, v, v, v;
org.apache.activemq.util.ByteSequence v, v, v;
boolean v, v;
v := @this: org.apache.activemq.store.kahadb.disk.page.Transaction$2;
v := @parameter: long;
v = specialinvoke v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: boolean atEOF()>();
if v == 0 goto label;
label:
v = specialinvoke v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: boolean atEOF()>();
if v != 0 goto label;
v = 0 cmp v;
if v >= 0 goto label;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
v = v.<org.apache.activemq.util.ByteSequence: int length>;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
v = v.<org.apache.activemq.util.ByteSequence: int offset>;
v = v - v;
v = staticinvoke <java.lang.Math: long min(long,long)>(v, v);
v = v cmp 0L;
if v <= 0 goto label;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
v = v.<org.apache.activemq.util.ByteSequence: int offset>;
v = v + v;
v.<org.apache.activemq.util.ByteSequence: int offset> = v;
goto label;
label:
return 0;
label:
return -1L;
}
public int available()
{
int v, v, v;
org.apache.activemq.store.kahadb.disk.page.Transaction$2 v;
org.apache.activemq.util.ByteSequence v, v;
v := @this: org.apache.activemq.store.kahadb.disk.page.Transaction$2;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
v = v.<org.apache.activemq.util.ByteSequence: int length>;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
v = v.<org.apache.activemq.util.ByteSequence: int offset>;
v = v - v;
return v;
}
public boolean markSupported()
{
org.apache.activemq.store.kahadb.disk.page.Transaction$2 v;
v := @this: org.apache.activemq.store.kahadb.disk.page.Transaction$2;
return 1;
}
public void mark(int)
{
byte[] v, v;
int v, v, v, v, v;
org.apache.activemq.store.kahadb.disk.page.PageFile v, v;
org.apache.activemq.util.ByteSequence v, v, v, v;
org.apache.activemq.store.kahadb.disk.page.Transaction$2 v;
org.apache.activemq.store.kahadb.disk.page.Page v;
org.apache.activemq.store.kahadb.disk.page.Transaction v, v;
v := @this: org.apache.activemq.store.kahadb.disk.page.Transaction$2;
v := @parameter: int;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.store.kahadb.disk.page.Page page>;
v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.store.kahadb.disk.page.Page markPage> = v;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.store.kahadb.disk.page.Transaction this$0>;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction: org.apache.activemq.store.kahadb.disk.page.PageFile pageFile>;
v = virtualinvoke v.<org.apache.activemq.store.kahadb.disk.page.PageFile: int getPageSize()>();
v = newarray (byte)[v];
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
v = virtualinvoke v.<org.apache.activemq.util.ByteSequence: byte[] getData()>();
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.store.kahadb.disk.page.Transaction this$0>;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction: org.apache.activemq.store.kahadb.disk.page.PageFile pageFile>;
v = virtualinvoke v.<org.apache.activemq.store.kahadb.disk.page.PageFile: int getPageSize()>();
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, 0, v, 0, v);
v = new org.apache.activemq.util.ByteSequence;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
v = virtualinvoke v.<org.apache.activemq.util.ByteSequence: int getOffset()>();
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk>;
v = virtualinvoke v.<org.apache.activemq.util.ByteSequence: int getLength()>();
specialinvoke v.<org.apache.activemq.util.ByteSequence: void <init>(byte[],int,int)>(v, v, v);
v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence markChunk> = v;
return;
}
public void reset()
{
org.apache.activemq.store.kahadb.disk.page.Transaction$2 v;
org.apache.activemq.util.ByteSequence v;
org.apache.activemq.store.kahadb.disk.page.Page v;
v := @this: org.apache.activemq.store.kahadb.disk.page.Transaction$2;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.store.kahadb.disk.page.Page markPage>;
v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.store.kahadb.disk.page.Page page> = v;
v = v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence markChunk>;
v.<org.apache.activemq.store.kahadb.disk.page.Transaction$2: org.apache.activemq.util.ByteSequence chunk> = v;
return;
}
}