void buildLists()

in src/main/java/org/apache/datasketches/DirectoryWalker.java [64:93]


    void buildLists() {
      File file = new File(nodePath);
      final String[] strFileDirArr = file.list(); // get array of file/dir names in my directory
      if (strFileDirArr == null) {
        throw new IllegalArgumentException("File is not a valid dir.");
      }
      final int numFileDirs = strFileDirArr.length;
      for (int i = 0; i < numFileDirs; i++) { // scan all file/dirs at this node
        final String fileName = nodePath + strFileDirArr[i];
        file = new File(fileName);
        if (file.isDirectory()) {
          if (recurseFlag) {
            if (nodeDirList == null) {
              nodeDirList = new ArrayList<>();
            }
            final Node node = new Node(fileName + FS, filePattern, recurseFlag, nodeFileList);
            nodeDirList.add(node);
          }
        } else { // it is a file
          if (filePattern != null) {
            if (filePattern.matcher(fileName).matches()) {
              nodeFileList.add(fileName); // add it if it matches
            }
          }
          else {
            nodeFileList.add(fileName); // just add it
          }
        }
      }
    }