List<ForwardIndexEntry> recordForwards = new ArrayList<ForwardIndexEntry>();
IndexCursor<Long, Entry, Long> childList = db.list( id );
while ( childList.next() )
{
IndexEntry old = childList.get();
ForwardIndexEntry newRec = new ForwardIndexEntry();
newRec.copy( old );
recordForwards.add( newRec );
}
childList.close();
Iterator list = recordForwards.iterator();
while ( list.hasNext() )
{
IndexEntry rec = ( IndexEntry ) list.next();
if ( engine != null && exprNode != null )
{
if ( db.getChildCount( rec.getId() ) == 0 )
{
Evaluator evaluator = engine.evaluator( exprNode );
if ( evaluator.evaluateId( rec.getId() ) )
{
Entry newEntry = db.lookup( rec.getId() );
EntryNode child = new EntryNode( ( Long ) rec.getId(), this, db, newEntry, map, exprNode,
engine );
children.add( child );
}
else
{
continue;
}
}
else
{
Entry newEntry = db.lookup( rec.getId() );
EntryNode child = new EntryNode( ( Long ) rec.getId(), this, db, newEntry, map, exprNode,
engine );
children.add( child );
}
}
else
{
Entry newEntry = db.lookup( ( Long ) rec.getId() );
EntryNode child = new EntryNode( ( Long ) rec.getId(), this, db, newEntry, map );
children.add( child );
}
}
}
catch ( Exception e )