public class org.apache.activemq.broker.region.cursors.VMPendingMessageCursor extends org.apache.activemq.broker.region.cursors.AbstractPendingMessageCursor
{
private final org.apache.activemq.broker.region.cursors.PendingList list;
private java.util.Iterator iter;
public void <init>(boolean)
{
org.apache.activemq.broker.region.cursors.PrioritizedPendingList v;
org.apache.activemq.broker.region.cursors.OrderedPendingList v;
org.apache.activemq.broker.region.cursors.VMPendingMessageCursor v;
boolean v, v;
v := @this: org.apache.activemq.broker.region.cursors.VMPendingMessageCursor;
v := @parameter: boolean;
specialinvoke v.<org.apache.activemq.broker.region.cursors.AbstractPendingMessageCursor: void <init>(boolean)>(v);
v = v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: boolean prioritizedMessages>;
if v == 0 goto label;
v = new org.apache.activemq.broker.region.cursors.PrioritizedPendingList;
specialinvoke v.<org.apache.activemq.broker.region.cursors.PrioritizedPendingList: void <init>()>();
v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: org.apache.activemq.broker.region.cursors.PendingList list> = v;
goto label;
label:
v = new org.apache.activemq.broker.region.cursors.OrderedPendingList;
specialinvoke v.<org.apache.activemq.broker.region.cursors.OrderedPendingList: void <init>()>();
v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: org.apache.activemq.broker.region.cursors.PendingList list> = v;
label:
return;
}
public synchronized java.util.List remove(org.apache.activemq.broker.ConnectionContext, org.apache.activemq.broker.region.Destination) throws java.lang.Exception
{
org.apache.activemq.command.Message$MessageDestination v;
java.util.Iterator v;
org.apache.activemq.broker.region.cursors.PendingList v;
java.util.ArrayList v;
org.apache.activemq.broker.ConnectionContext v;
java.lang.Object v;
org.apache.activemq.broker.region.cursors.VMPendingMessageCursor v;
boolean v;
org.apache.activemq.broker.region.Destination v;
v := @this: org.apache.activemq.broker.region.cursors.VMPendingMessageCursor;
v := @parameter: org.apache.activemq.broker.ConnectionContext;
v := @parameter: org.apache.activemq.broker.region.Destination;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: org.apache.activemq.broker.region.cursors.PendingList list>;
v = interfaceinvoke v.<org.apache.activemq.broker.region.cursors.PendingList: 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 = interfaceinvoke v.<org.apache.activemq.broker.region.MessageReference: org.apache.activemq.command.Message$MessageDestination getRegionDestination()>();
if v != v goto label;
interfaceinvoke v.<org.apache.activemq.broker.region.MessageReference: int decrementReferenceCount()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.Iterator: void remove()>();
goto label;
label:
return v;
}
public synchronized boolean isEmpty()
{
java.util.Iterator v;
org.apache.activemq.broker.region.cursors.PendingList v, v;
java.lang.Object v;
org.apache.activemq.broker.region.QueueMessageReference v;
org.apache.activemq.broker.region.cursors.VMPendingMessageCursor v;
boolean v, v, v;
v := @this: org.apache.activemq.broker.region.cursors.VMPendingMessageCursor;
v = v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: org.apache.activemq.broker.region.cursors.PendingList list>;
v = interfaceinvoke v.<org.apache.activemq.broker.region.cursors.PendingList: boolean isEmpty()>();
if v == 0 goto label;
return 1;
label:
v = v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: org.apache.activemq.broker.region.cursors.PendingList list>;
v = interfaceinvoke v.<org.apache.activemq.broker.region.cursors.PendingList: 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 = <org.apache.activemq.broker.region.QueueMessageReference: org.apache.activemq.broker.region.QueueMessageReference NULL_MESSAGE>;
if v == v goto label;
v = interfaceinvoke v.<org.apache.activemq.broker.region.MessageReference: boolean isDropped()>();
if v != 0 goto label;
return 0;
label:
interfaceinvoke v.<java.util.Iterator: void remove()>();
goto label;
label:
return 1;
}
public synchronized void reset()
{
java.util.Iterator v;
org.apache.activemq.broker.region.cursors.PendingList v;
org.apache.activemq.broker.region.cursors.VMPendingMessageCursor v;
v := @this: org.apache.activemq.broker.region.cursors.VMPendingMessageCursor;
v = v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: org.apache.activemq.broker.region.cursors.PendingList list>;
v = interfaceinvoke v.<org.apache.activemq.broker.region.cursors.PendingList: java.util.Iterator iterator()>();
v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: java.util.Iterator iter> = v;
v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: org.apache.activemq.broker.region.MessageReference last> = null;
return;
}
public synchronized boolean tryAddMessageLast(org.apache.activemq.broker.region.MessageReference, long)
{
org.apache.activemq.broker.region.MessageReference v;
org.apache.activemq.broker.region.cursors.PendingList v;
long v;
org.apache.activemq.broker.region.cursors.VMPendingMessageCursor v;
v := @this: org.apache.activemq.broker.region.cursors.VMPendingMessageCursor;
v := @parameter: org.apache.activemq.broker.region.MessageReference;
v := @parameter: long;
interfaceinvoke v.<org.apache.activemq.broker.region.MessageReference: int incrementReferenceCount()>();
v = v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: org.apache.activemq.broker.region.cursors.PendingList list>;
interfaceinvoke v.<org.apache.activemq.broker.region.cursors.PendingList: org.apache.activemq.broker.region.cursors.PendingNode addMessageLast(org.apache.activemq.broker.region.MessageReference)>(v);
return 1;
}
public synchronized void addMessageFirst(org.apache.activemq.broker.region.MessageReference)
{
org.apache.activemq.broker.region.MessageReference v;
org.apache.activemq.broker.region.cursors.PendingList v;
org.apache.activemq.broker.region.cursors.VMPendingMessageCursor v;
v := @this: org.apache.activemq.broker.region.cursors.VMPendingMessageCursor;
v := @parameter: org.apache.activemq.broker.region.MessageReference;
interfaceinvoke v.<org.apache.activemq.broker.region.MessageReference: int incrementReferenceCount()>();
v = v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: org.apache.activemq.broker.region.cursors.PendingList list>;
interfaceinvoke v.<org.apache.activemq.broker.region.cursors.PendingList: org.apache.activemq.broker.region.cursors.PendingNode addMessageFirst(org.apache.activemq.broker.region.MessageReference)>(v);
return;
}
public synchronized boolean hasNext()
{
java.util.Iterator v;
org.apache.activemq.broker.region.cursors.VMPendingMessageCursor v;
boolean v;
v := @this: org.apache.activemq.broker.region.cursors.VMPendingMessageCursor;
v = v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: java.util.Iterator iter>;
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
return v;
}
public synchronized org.apache.activemq.broker.region.MessageReference next()
{
org.apache.activemq.broker.region.MessageReference v, v, v;
java.util.Iterator v;
java.lang.Object v;
org.apache.activemq.broker.region.cursors.VMPendingMessageCursor v;
v := @this: org.apache.activemq.broker.region.cursors.VMPendingMessageCursor;
v = v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: java.util.Iterator iter>;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: org.apache.activemq.broker.region.MessageReference last> = v;
v = v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: org.apache.activemq.broker.region.MessageReference last>;
if v == null goto label;
v = v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: org.apache.activemq.broker.region.MessageReference last>;
interfaceinvoke v.<org.apache.activemq.broker.region.MessageReference: int incrementReferenceCount()>();
label:
v = v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: org.apache.activemq.broker.region.MessageReference last>;
return v;
}
public synchronized void remove()
{
org.apache.activemq.broker.region.MessageReference v, v;
java.util.Iterator v;
org.apache.activemq.broker.region.cursors.VMPendingMessageCursor v;
v := @this: org.apache.activemq.broker.region.cursors.VMPendingMessageCursor;
v = v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: org.apache.activemq.broker.region.MessageReference last>;
if v == null goto label;
v = v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: org.apache.activemq.broker.region.MessageReference last>;
interfaceinvoke v.<org.apache.activemq.broker.region.MessageReference: int decrementReferenceCount()>();
label:
v = v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: java.util.Iterator iter>;
interfaceinvoke v.<java.util.Iterator: void remove()>();
return;
}
public synchronized int size()
{
int v;
org.apache.activemq.broker.region.cursors.PendingList v;
org.apache.activemq.broker.region.cursors.VMPendingMessageCursor v;
v := @this: org.apache.activemq.broker.region.cursors.VMPendingMessageCursor;
v = v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: org.apache.activemq.broker.region.cursors.PendingList list>;
v = interfaceinvoke v.<org.apache.activemq.broker.region.cursors.PendingList: int size()>();
return v;
}
public synchronized long messageSize()
{
long v;
org.apache.activemq.broker.region.cursors.PendingList v;
org.apache.activemq.broker.region.cursors.VMPendingMessageCursor v;
v := @this: org.apache.activemq.broker.region.cursors.VMPendingMessageCursor;
v = v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: org.apache.activemq.broker.region.cursors.PendingList list>;
v = interfaceinvoke v.<org.apache.activemq.broker.region.cursors.PendingList: long messageSize()>();
return v;
}
public synchronized void clear()
{
java.util.Iterator v;
org.apache.activemq.broker.region.cursors.PendingList v, v;
java.lang.Object v;
org.apache.activemq.broker.region.cursors.VMPendingMessageCursor v;
boolean v;
v := @this: org.apache.activemq.broker.region.cursors.VMPendingMessageCursor;
v = v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: org.apache.activemq.broker.region.cursors.PendingList list>;
v = interfaceinvoke v.<org.apache.activemq.broker.region.cursors.PendingList: 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()>();
interfaceinvoke v.<org.apache.activemq.broker.region.MessageReference: int decrementReferenceCount()>();
goto label;
label:
v = v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: org.apache.activemq.broker.region.cursors.PendingList list>;
interfaceinvoke v.<org.apache.activemq.broker.region.cursors.PendingList: void clear()>();
return;
}
public synchronized void remove(org.apache.activemq.broker.region.MessageReference)
{
org.apache.activemq.broker.region.MessageReference v;
org.apache.activemq.broker.region.cursors.PendingList v;
org.apache.activemq.broker.region.cursors.VMPendingMessageCursor v;
v := @this: org.apache.activemq.broker.region.cursors.VMPendingMessageCursor;
v := @parameter: org.apache.activemq.broker.region.MessageReference;
v = v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: org.apache.activemq.broker.region.cursors.PendingList list>;
interfaceinvoke v.<org.apache.activemq.broker.region.cursors.PendingList: org.apache.activemq.broker.region.cursors.PendingNode remove(org.apache.activemq.broker.region.MessageReference)>(v);
interfaceinvoke v.<org.apache.activemq.broker.region.MessageReference: int decrementReferenceCount()>();
return;
}
public java.util.LinkedList pageInList(int)
{
java.util.Iterator v;
org.apache.activemq.broker.region.cursors.PendingList v;
int v, v;
java.lang.Object v;
java.util.LinkedList v;
org.apache.activemq.broker.region.cursors.VMPendingMessageCursor v;
boolean v;
v := @this: org.apache.activemq.broker.region.cursors.VMPendingMessageCursor;
v := @parameter: int;
v = new java.util.LinkedList;
specialinvoke v.<java.util.LinkedList: void <init>()>();
v = v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: org.apache.activemq.broker.region.cursors.PendingList list>;
v = interfaceinvoke v.<org.apache.activemq.broker.region.cursors.PendingList: 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()>();
interfaceinvoke v.<org.apache.activemq.broker.region.MessageReference: int incrementReferenceCount()>();
virtualinvoke v.<java.util.LinkedList: boolean add(java.lang.Object)>(v);
v = virtualinvoke v.<java.util.LinkedList: int size()>();
if v < v goto label;
label:
return v;
}
public boolean isTransient()
{
org.apache.activemq.broker.region.cursors.VMPendingMessageCursor v;
v := @this: org.apache.activemq.broker.region.cursors.VMPendingMessageCursor;
return 1;
}
public void destroy() throws java.lang.Exception
{
org.apache.activemq.broker.region.cursors.VMPendingMessageCursor v;
v := @this: org.apache.activemq.broker.region.cursors.VMPendingMessageCursor;
specialinvoke v.<org.apache.activemq.broker.region.cursors.AbstractPendingMessageCursor: void destroy()>();
virtualinvoke v.<org.apache.activemq.broker.region.cursors.VMPendingMessageCursor: void clear()>();
return;
}
}