code: public static <T extends Request<T>> RequestAllocator<T> inferFromConfig(RequestAllocatorConfig<T> configuration) {
      try {
        String alias = configuration.getLimitedScopeConfig().hasPath(ALLOCATOR_ALIAS_KEY) ?
            configuration.getLimitedScopeConfig().getString(ALLOCATOR_ALIAS_KEY) :
            BruteForceAllocator.Factory.class.getName();
        RequestAllocator.Factory allocatorFactory = new ClassAliasResolver<>(RequestAllocator.Factory.class).
            resolveClass(alias).newInstance();
  
        log.info("Using allocator factory " + allocatorFactory.getClass().getName());
  
        return allocatorFactory.createRequestAllocator(configuration);
      } catch (ReflectiveOperationException roe) {
        throw new RuntimeException(roe);
      }
    }
docs: Infer and construct a {@link RequestAllocator} from an input {@link Config}.