docs: public void onEachNode( Session session,
                              boolean includeSystemNodes,
                              NodeOperation operation ) throws Exception {
          Node node = session.getRootNode();
          operation.run(node);
          NodeIterator iter = node.getNodes();
          while (iter.hasNext()) {
              Node child = iter.nextNode();
              if (!includeSystemNodes && child.getName().equals("jcr:system")) continue;
              operation.run(child);
              onEachNodeBelow(child, operation);
          }
      }