code: public List<T> findAll(String path, @Nullable S conf, AlluxioConfiguration alluxioConf) {
      Preconditions.checkArgument(path != null, "path may not be null");
  
      List<T> factories = new ArrayList<>(mFactories);
      String libDir = PathUtils.concatPath(alluxioConf.get(PropertyKey.HOME), "lib");
      String extensionDir = alluxioConf.get(PropertyKey.EXTENSIONS_DIR);
      scanLibs(factories, libDir);
      scanExtensions(factories, extensionDir);
  
      List<T> eligibleFactories = new ArrayList<>();
      for (T factory : factories) {
        if (factory.supportsPath(path, conf)) {
          LOG.debug("Factory implementation {} is eligible for path {}", factory, path);
          eligibleFactories.add(factory);
        }
      }
  
      if (eligibleFactories.isEmpty()) {
        LOG.warn("No factory implementation supports the path {}", path);
      }
      return eligibleFactories;
    }
docs: Finds all the factories that support the given path.
  
  @param path path
  @param conf configuration of the extension
  @param alluxioConf Alluxio configuration
  @return list of factories that support the given path which may be an empty list