if (sort) {
maps = Util.sortedIterator(maps, ProjectTraversal.dataMapComparator);
}
while (maps.hasNext()) {
DataMap map = (DataMap) maps.next();
ProjectPath mapPath = path.appendToPath(map);
handler.projectNode(mapPath);
if (handler.shouldReadChildren(map, path)) {
this.traverseEntities(map.getObjEntities().iterator(), mapPath);
this.traverseEntities(map.getDbEntities().iterator(), mapPath);
this.traverseProcedures(map.getProcedures().iterator(), mapPath);
this.traverseQueries(map.getQueries().iterator(), mapPath);
}
}
}