code: private void recurse(File file, IResourceVisitor visitor, String path)
  			throws IOException {
  		File[] files = file.listFiles();
  		if (files == null) {
  			return;
  		}
  		for (File child : files) {
  			String childName = path + (path.length() == 0 ? "" : "/") //$NON-NLS-1$ //$NON-NLS-2$
  					+ child.getName();
  			boolean result = visitor.visitResource(new VisitorResource(child,
  					child.lastModified(), childName), childName);
  			if (child.isDirectory() && result) {
  				recurse(child, visitor, childName);
  			}
  		}
  	}
docs: Internal method for recursing sub directories.
  
  @param file
  The file object
  @param visitor
  The {@link IResourceVisitor} to call for non-folder resources
  @throws IOException