code: @Override
    public List<Dataset> findDatasets() throws IOException {
      Set<URI> leafDatasets = getValidDatasetURIs(this.commonRoot);
      if (leafDatasets.isEmpty()) {
        return ImmutableList.of();
      }
  
      // Parallel execution for copyDataset for performance consideration.
      final List<Dataset> result = new CopyOnWriteArrayList<>();
      Iterator<Callable<Void>> callableIterator =
          Iterators.transform(leafDatasets.iterator(), new Function<URI, Callable<Void>>() {
            @Override
            public Callable<Void> apply(final URI datasetURI) {
              return findDatasetsCallable(configClient, datasetURI, props, blacklistPatterns, result);
            }
          });
  
      this.executeItertorExecutor(callableIterator);
      log.info("found {} datasets in ConfigBasedDatasetsFinder", result.size());
      return result;
    }
docs: Based on the {@link #whitelistTag}, find all URI which imports the tag. Then filter out
  
  1. disabled dataset URI
  2. None leaf dataset URI
  
  Then created {@link ConfigBasedDataset} based on the {@link Config} of the URIs