public class org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl extends java.lang.Object implements org.apache.jackrabbit.jcr2spi.query.ScoreNodeIterator
{
private static final org.slf4j.Logger log;
private final org.apache.jackrabbit.jcr2spi.ItemManager itemMgr;
private final org.apache.jackrabbit.jcr2spi.hierarchy.HierarchyManager hierarchyMgr;
private final javax.jcr.RangeIterator rows;
private int pos;
private int invalid;
private org.apache.jackrabbit.spi.NodeId nextId;
private javax.jcr.Node next;
private double nextScore;
public void <init>(org.apache.jackrabbit.jcr2spi.ItemManager, org.apache.jackrabbit.jcr2spi.hierarchy.HierarchyManager, org.apache.jackrabbit.spi.QueryInfo)
{
org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl v;
javax.jcr.RangeIterator v;
org.apache.jackrabbit.jcr2spi.hierarchy.HierarchyManager v;
int v;
org.apache.jackrabbit.spi.QueryInfo v;
org.apache.jackrabbit.jcr2spi.ItemManager v;
v := @this: org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl;
v := @parameter: org.apache.jackrabbit.jcr2spi.ItemManager;
v := @parameter: org.apache.jackrabbit.jcr2spi.hierarchy.HierarchyManager;
v := @parameter: org.apache.jackrabbit.spi.QueryInfo;
specialinvoke v.<java.lang.Object: void <init>()>();
v = (int) -1;
v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: int pos> = v;
v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: int invalid> = 0;
v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: org.apache.jackrabbit.jcr2spi.ItemManager itemMgr> = v;
v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: org.apache.jackrabbit.jcr2spi.hierarchy.HierarchyManager hierarchyMgr> = v;
v = interfaceinvoke v.<org.apache.jackrabbit.spi.QueryInfo: javax.jcr.RangeIterator getRows()>();
v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: javax.jcr.RangeIterator rows> = v;
specialinvoke v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: void fetchNext()>();
return;
}
public double getScore() throws java.util.NoSuchElementException
{
org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl v;
java.util.NoSuchElementException v;
boolean v;
double v;
v := @this: org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl;
v = virtualinvoke v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: boolean hasNext()>();
if v != 0 goto label;
v = new java.util.NoSuchElementException;
specialinvoke v.<java.util.NoSuchElementException: void <init>()>();
throw v;
label:
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: double nextScore>;
return v;
}
public javax.jcr.Node nextNode() throws java.util.NoSuchElementException
{
org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl v;
javax.jcr.Node v, v;
java.util.NoSuchElementException v;
v := @this: org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl;
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: javax.jcr.Node next>;
if v != null goto label;
v = new java.util.NoSuchElementException;
specialinvoke v.<java.util.NoSuchElementException: void <init>()>();
throw v;
label:
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: javax.jcr.Node next>;
specialinvoke v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: void fetchNext()>();
return v;
}
public void skip(long) throws java.util.NoSuchElementException
{
javax.jcr.RangeIterator v;
long v, v, v, v;
java.lang.IllegalArgumentException v;
org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl v;
byte v, v;
int v;
v := @this: org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl;
v := @parameter: long;
v = v cmp 0L;
if v >= 0 goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("skipNum must not be negative");
throw v;
label:
v = v cmp 0L;
if v == 0 goto label;
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: javax.jcr.RangeIterator rows>;
v = v - 1L;
interfaceinvoke v.<javax.jcr.RangeIterator: void skip(long)>(v);
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: int pos>;
v = v - 1L;
v = v + v;
v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: int pos> = v;
specialinvoke v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: void fetchNext()>();
label:
return;
}
public long getSize()
{
javax.jcr.RangeIterator v, v;
long v, v, v;
org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl v;
byte v;
int v;
v := @this: org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl;
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: javax.jcr.RangeIterator rows>;
v = interfaceinvoke v.<javax.jcr.RangeIterator: long getSize()>();
v = v cmp -1L;
if v == 0 goto label;
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: javax.jcr.RangeIterator rows>;
v = interfaceinvoke v.<javax.jcr.RangeIterator: long getSize()>();
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: int invalid>;
v = v - v;
return v;
label:
return -1L;
}
public long getPosition()
{
org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl v;
int v, v, v;
v := @this: org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl;
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: int pos>;
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: int invalid>;
v = v - v;
return v;
}
public java.lang.Object next() throws java.util.NoSuchElementException
{
org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl v;
javax.jcr.Node v;
v := @this: org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl;
v = virtualinvoke v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: javax.jcr.Node nextNode()>();
return v;
}
public boolean hasNext()
{
org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl v;
javax.jcr.Node v;
boolean v;
v := @this: org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl;
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: javax.jcr.Node next>;
if v == null goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public void remove()
{
java.lang.UnsupportedOperationException v;
org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl v;
v := @this: org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>(java.lang.String)>("remove");
throw v;
}
private void fetchNext()
{
org.apache.jackrabbit.jcr2spi.ItemManager v;
org.apache.jackrabbit.spi.NodeId v, v, v, v;
org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl v;
javax.jcr.Node v;
int v, v, v, v, v, v, v, v, v, v;
java.lang.String v, v;
boolean v, v;
double v;
org.slf4j.Logger v, v;
javax.jcr.RangeIterator v, v;
org.apache.jackrabbit.jcr2spi.hierarchy.NodeEntry v;
java.lang.Exception v;
javax.jcr.Item v;
org.apache.jackrabbit.jcr2spi.hierarchy.HierarchyManager v;
java.lang.Object v;
v := @this: org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl;
v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: javax.jcr.Node next> = null;
v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: double nextScore> = 0.0;
label:
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: javax.jcr.Node next>;
if v != null goto label;
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: javax.jcr.RangeIterator rows>;
v = interfaceinvoke v.<javax.jcr.RangeIterator: boolean hasNext()>();
if v == 0 goto label;
label:
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: javax.jcr.RangeIterator rows>;
v = interfaceinvoke v.<javax.jcr.RangeIterator: java.lang.Object next()>();
v = interfaceinvoke v.<org.apache.jackrabbit.spi.QueryResultRow: org.apache.jackrabbit.spi.NodeId getNodeId(java.lang.String)>(null);
v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: org.apache.jackrabbit.spi.NodeId nextId> = v;
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: org.apache.jackrabbit.jcr2spi.ItemManager itemMgr>;
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: org.apache.jackrabbit.jcr2spi.hierarchy.HierarchyManager hierarchyMgr>;
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: org.apache.jackrabbit.spi.NodeId nextId>;
v = interfaceinvoke v.<org.apache.jackrabbit.jcr2spi.hierarchy.HierarchyManager: org.apache.jackrabbit.jcr2spi.hierarchy.NodeEntry getNodeEntry(org.apache.jackrabbit.spi.NodeId)>(v);
v = interfaceinvoke v.<org.apache.jackrabbit.jcr2spi.ItemManager: javax.jcr.Item getItem(org.apache.jackrabbit.jcr2spi.hierarchy.HierarchyEntry)>(v);
v = interfaceinvoke v.<javax.jcr.Item: boolean isNode()>();
if v == 0 goto label;
v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: javax.jcr.Node next> = v;
v = interfaceinvoke v.<org.apache.jackrabbit.spi.QueryResultRow: double getScore(java.lang.String)>(null);
v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: double nextScore> = v;
goto label;
label:
v = <org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: org.slf4j.Logger log>;
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: org.apache.jackrabbit.spi.NodeId nextId>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.jackrabbit.spi.NodeId)>(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[])>("Item with Id is not a Node: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String)>(v);
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: int invalid>;
v = v + 1;
v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: int invalid> = v;
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: int pos>;
v = v + 1;
v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: int pos> = v;
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: org.slf4j.Logger log>;
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: org.apache.jackrabbit.spi.NodeId nextId>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.jackrabbit.spi.NodeId)>(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[])>("Exception retrieving Node with Id: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String)>(v);
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: int invalid>;
v = v + 1;
v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: int invalid> = v;
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: int pos>;
v = v + 1;
v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: int pos> = v;
goto label;
label:
v = v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: int pos>;
v = v + 1;
v.<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: int pos> = v;
return;
catch java.lang.Exception from label to label with label;
}
static void <clinit>()
{
org.slf4j.Logger v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/jackrabbit/jcr2spi/query/NodeIteratorImpl;");
<org.apache.jackrabbit.jcr2spi.query.NodeIteratorImpl: org.slf4j.Logger log> = v;
return;
}
}