code: public List<NodeData> getChildNodesByPage(final NodeData parent, final int fromOrderNum)
     {
        // get list of children uuids
        final Map<Integer, Set<String>> pages =
           (Map<Integer, Set<String>>)cache.get(new CacheNodesByPageId(getOwnerId(), parent.getIdentifier()));
  
        if (pages == null)
        {
           return null;
        }
  
        Set<String> set = pages.get(fromOrderNum);
        if (set == null)
        {
           return null;
        }
  
        final List<NodeData> childs = new ArrayList<NodeData>();
        for (String childId : set)
        {
           NodeData child = (NodeData)cache.get(new CacheId(getOwnerId(), childId));
           if (child == null)
           {
              return null;
           }
  
           childs.add(child);
        }
  
        // order children by orderNumber, as HashSet returns children in other order
        Collections.sort(childs, new NodesOrderComparator<NodeData>());
        return childs;
     }
docs: {@inheritDoc}