jackrabbit-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Lubos and Alena Pochman" <pochm...@gmail.com>
Subject How to get children (direct descendants of the given node)
Date Fri, 16 Mar 2007 20:02:16 GMT
It is Friday, and I probably have brain lock (bigger than usual 8-).
But I cannot find easy way to get children (direct descendants of the given
node).
The best thing I came up with is (for nt:folder traversal):

            ArrayList<String> subFolderNames = new ArrayList<String>();
            Workspace workspace = this.session.getWorkspace();
            QueryManager queryMan = workspace.getQueryManager();
            String qstr = "/jcr:root" + path + "//element(*, nt:folder)";
            Query q = queryMan.createQuery(qstr, Query.XPATH);
            QueryResult results = q.execute();
            NodeIterator it = results.getNodes();
            while (it.hasNext()) {
                Node n = it.nextNode();
                if (parentFolder.getDepth() + 1 == n.getDepth())
                    subFolderNames.add(n.getName());
            }

There must be a better way (I just do not see it 8-).

Lubos

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message