code: protected Set<URI> getValidDatasetURIs(Path datasetCommonRoot) {
      Collection<URI> allDatasetURIs;
      Set<URI> disabledURISet = new HashSet();
  
      // This try block basically populate the Valid dataset URI set.
      try {
        allDatasetURIs = configClient.getImportedBy(new URI(whitelistTag.toString()), true);
        enhanceDisabledURIsWithBlackListTag(disabledURISet);
      } catch ( ConfigStoreFactoryDoesNotExistsException | ConfigStoreCreationException
          | URISyntaxException e) {
        log.error("Caught error while getting all the datasets URIs " + e.getMessage());
        throw new RuntimeException(e);
      }
      return getValidDatasetURIsHelper(allDatasetURIs, disabledURISet, datasetCommonRoot);
    }
docs: Semantic of black/whitelist:
  - Whitelist always respect blacklist.
  - Job-level blacklist is reponsible for dataset filtering instead of dataset discovery. i.e.
  There's no implementation of job-level whitelist currently.