private T newFileCleaner(String className, Configuration conf) {
    try {
      Class<? extends FileCleanerDelegate> c =
        Class.forName(className).asSubclass(FileCleanerDelegate.class);
      @SuppressWarnings("unchecked")
      T cleaner = (T) c.getDeclaredConstructor().newInstance();
      cleaner.setConf(conf);
      cleaner.init(this.params);
      return cleaner;
    } catch (Exception e) {
      LOG.warn("Can NOT create CleanerDelegate={}", className, e);
      // skipping if can't instantiate
      return null;
    }
  }
A utility method to create new instances of LogCleanerDelegate based on the class name of the
LogCleanerDelegate.
@param className fully qualified class name of the LogCleanerDelegate
@param conf      used configuration
@return the new instance
hbase-server/src/main/java/org/apache/hadoop/hbase/master/cleaner/CleanerChore.java