code: public ResourcePoolsBuilder with(ResourceType<SizedResourcePool> type, long size, ResourceUnit unit, boolean persistent) {
      return with(new SizedResourcePoolImpl<>(type, size, unit, persistent));
    }
docs: Add the {@link ResourcePool} of {@link ResourceType} in the returned builder.
  
  @param type the resource type
  @param size the pool size
  @param unit the pool size unit
  @param persistent if the pool is to be persistent
  @return a new builder with the added pool
  
  @throws IllegalArgumentException if the set of resource pools already contains a pool for {@code type}