public class org.apache.activemq.transport.amqp.message.AmqpWritableBuffer extends java.lang.Object implements org.apache.qpid.proton.codec.WritableBuffer
{
public static final int DEFAULT_CAPACITY;
byte[] buffer;
int position;
public void <init>()
{
org.apache.activemq.transport.amqp.message.AmqpWritableBuffer v;
v := @this: org.apache.activemq.transport.amqp.message.AmqpWritableBuffer;
specialinvoke v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: void <init>(int)>(4096);
return;
}
public void <init>(int)
{
int v;
byte[] v;
org.apache.activemq.transport.amqp.message.AmqpWritableBuffer v;
v := @this: org.apache.activemq.transport.amqp.message.AmqpWritableBuffer;
v := @parameter: int;
specialinvoke v.<java.lang.Object: void <init>()>();
v = newarray (byte)[v];
v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer> = v;
return;
}
public byte[] getArray()
{
byte[] v;
org.apache.activemq.transport.amqp.message.AmqpWritableBuffer v;
v := @this: org.apache.activemq.transport.amqp.message.AmqpWritableBuffer;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer>;
return v;
}
public int getArrayLength()
{
int v;
org.apache.activemq.transport.amqp.message.AmqpWritableBuffer v;
v := @this: org.apache.activemq.transport.amqp.message.AmqpWritableBuffer;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
return v;
}
public void put(byte)
{
byte[] v;
byte v;
int v, v, v;
org.apache.activemq.transport.amqp.message.AmqpWritableBuffer v;
v := @this: org.apache.activemq.transport.amqp.message.AmqpWritableBuffer;
v := @parameter: byte;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v = v + 1;
specialinvoke v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: void ensureCapacity(int)>(v);
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer>;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v[v] = v;
v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position> = v;
return;
}
public void putShort(short)
{
byte[] v, v;
org.apache.activemq.transport.amqp.message.AmqpWritableBuffer v;
short v;
int v, v, v, v, v, v, v, v;
v := @this: org.apache.activemq.transport.amqp.message.AmqpWritableBuffer;
v := @parameter: short;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v = v + 2;
specialinvoke v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: void ensureCapacity(int)>(v);
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer>;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v = v + 1;
v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position> = v;
v = v >>> 8;
v[v] = v;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer>;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v = v + 1;
v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position> = v;
v = v >>> 0;
v[v] = v;
return;
}
public void putInt(int)
{
byte[] v, v, v, v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.activemq.transport.amqp.message.AmqpWritableBuffer v;
v := @this: org.apache.activemq.transport.amqp.message.AmqpWritableBuffer;
v := @parameter: int;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v = v + 4;
specialinvoke v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: void ensureCapacity(int)>(v);
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer>;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v = v + 1;
v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position> = v;
v = v >>> 24;
v[v] = v;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer>;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v = v + 1;
v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position> = v;
v = v >>> 16;
v[v] = v;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer>;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v = v + 1;
v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position> = v;
v = v >>> 8;
v[v] = v;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer>;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v = v + 1;
v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position> = v;
v = v >>> 0;
v[v] = v;
return;
}
public void putLong(long)
{
byte[] v, v, v, v, v, v, v, v;
org.apache.activemq.transport.amqp.message.AmqpWritableBuffer v;
long v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
v := @this: org.apache.activemq.transport.amqp.message.AmqpWritableBuffer;
v := @parameter: long;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v = v + 8;
specialinvoke v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: void ensureCapacity(int)>(v);
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer>;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v = v + 1;
v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position> = v;
v[v] = v;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer>;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v = v + 1;
v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position> = v;
v[v] = v;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer>;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v = v + 1;
v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position> = v;
v[v] = v;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer>;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v = v + 1;
v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position> = v;
v[v] = v;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer>;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v = v + 1;
v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position> = v;
v[v] = v;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer>;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v = v + 1;
v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position> = v;
v[v] = v;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer>;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v = v + 1;
v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position> = v;
v[v] = v;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer>;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v = v + 1;
v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position> = v;
v[v] = v;
return;
}
public void putFloat(float)
{
int v;
float v;
org.apache.activemq.transport.amqp.message.AmqpWritableBuffer v;
v := @this: org.apache.activemq.transport.amqp.message.AmqpWritableBuffer;
v := @parameter: float;
v = staticinvoke <java.lang.Float: int floatToRawIntBits(float)>(v);
virtualinvoke v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: void putInt(int)>(v);
return;
}
public void putDouble(double)
{
org.apache.activemq.transport.amqp.message.AmqpWritableBuffer v;
long v;
double v;
v := @this: org.apache.activemq.transport.amqp.message.AmqpWritableBuffer;
v := @parameter: double;
v = staticinvoke <java.lang.Double: long doubleToRawLongBits(double)>(v);
virtualinvoke v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: void putLong(long)>(v);
return;
}
public void put(byte[], int, int)
{
byte[] v, v;
org.apache.activemq.transport.amqp.message.AmqpWritableBuffer v;
int v, v, v, v, v;
v := @this: org.apache.activemq.transport.amqp.message.AmqpWritableBuffer;
v := @parameter: byte[];
v := @parameter: int;
v := @parameter: int;
if v != 0 goto label;
return;
label:
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v = v + v;
specialinvoke v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: void ensureCapacity(int)>(v);
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer>;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, v, v, v, v);
v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position> = v;
return;
}
public boolean hasRemaining()
{
int v;
org.apache.activemq.transport.amqp.message.AmqpWritableBuffer v;
boolean v;
v := @this: org.apache.activemq.transport.amqp.message.AmqpWritableBuffer;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
if v >= 2147483647 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public int remaining()
{
int v, v;
org.apache.activemq.transport.amqp.message.AmqpWritableBuffer v;
v := @this: org.apache.activemq.transport.amqp.message.AmqpWritableBuffer;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v = 2147483647 - v;
return v;
}
public int position()
{
int v;
org.apache.activemq.transport.amqp.message.AmqpWritableBuffer v;
v := @this: org.apache.activemq.transport.amqp.message.AmqpWritableBuffer;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
return v;
}
public void position(int)
{
int v;
org.apache.activemq.transport.amqp.message.AmqpWritableBuffer v;
v := @this: org.apache.activemq.transport.amqp.message.AmqpWritableBuffer;
v := @parameter: int;
specialinvoke v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: void ensureCapacity(int)>(v);
v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position> = v;
return;
}
public void put(java.nio.ByteBuffer)
{
byte[] v;
org.apache.activemq.transport.amqp.message.AmqpWritableBuffer v;
java.nio.ByteBuffer v;
byte v;
int v, v, v, v, v;
boolean v;
v := @this: org.apache.activemq.transport.amqp.message.AmqpWritableBuffer;
v := @parameter: java.nio.ByteBuffer;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v = virtualinvoke v.<java.nio.ByteBuffer: int remaining()>();
v = v + v;
specialinvoke v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: void ensureCapacity(int)>(v);
label:
v = virtualinvoke v.<java.nio.ByteBuffer: boolean hasRemaining()>();
if v == 0 goto label;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer>;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
v = v + 1;
v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position> = v;
v = virtualinvoke v.<java.nio.ByteBuffer: byte get()>();
v[v] = v;
goto label;
label:
v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position> = v;
return;
}
public int limit()
{
org.apache.activemq.transport.amqp.message.AmqpWritableBuffer v;
v := @this: org.apache.activemq.transport.amqp.message.AmqpWritableBuffer;
return 2147483647;
}
public void put(org.apache.qpid.proton.codec.ReadableBuffer)
{
int v;
org.apache.activemq.transport.amqp.message.AmqpWritableBuffer v;
org.apache.qpid.proton.codec.ReadableBuffer v;
v := @this: org.apache.activemq.transport.amqp.message.AmqpWritableBuffer;
v := @parameter: org.apache.qpid.proton.codec.ReadableBuffer;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
specialinvoke v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: void ensureCapacity(int)>(v);
interfaceinvoke v.<org.apache.qpid.proton.codec.ReadableBuffer: org.apache.qpid.proton.codec.ReadableBuffer get(org.apache.qpid.proton.codec.WritableBuffer)>(v);
return;
}
private void ensureCapacity(int)
{
byte[] v, v, v, v;
org.apache.activemq.transport.amqp.message.AmqpWritableBuffer v;
int v, v, v, v, v, v;
v := @this: org.apache.activemq.transport.amqp.message.AmqpWritableBuffer;
v := @parameter: int;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer>;
v = lengthof v;
if v <= v goto label;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer>;
v = lengthof v;
v = v << 1;
v = staticinvoke <java.lang.Math: int max(int,int)>(v, v);
v = newarray (byte)[v];
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer>;
v = v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: int position>;
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, 0, v, 0, v);
v.<org.apache.activemq.transport.amqp.message.AmqpWritableBuffer: byte[] buffer> = v;
label:
return;
}
}