// full iterator
List<NodeImpl> nodes = new ArrayList<NodeImpl>();
for (int i = 0, length = childs.size(); i < length; i++)
{
NodeData child = childs.get(i);
if (filter.accept(child)
&& session.getAccessManager().hasPermission(child.getACL(), new String[]{PermissionType.READ},
session.getUserState().getIdentity()))
{
NodeImpl item = (NodeImpl)dataManager.readItem(child, nodeData(), true, false);
session.getActionHandler().postRead(item);