docs: public Jdbi build(Environment environment,
                        PooledDataSourceFactory configuration,
                        ManagedDataSource dataSource,
                        String name) {
  
          // Create the instance
          final Jdbi jdbi = newInstance(dataSource);
  
          // Manage the data source that created this instance.
          environment.lifecycle().manage(dataSource);
  
          // Setup the required health checks.
          final Optional<String> validationQuery = configuration.getValidationQuery();
          environment.healthChecks().register(name, new JdbiHealthCheck(
              environment.getHealthCheckExecutorService(),
              configuration.getValidationQueryTimeout().orElseGet(() -> Duration.seconds(5)),
              jdbi,
              validationQuery));
  
          // Setup the SQL logger
          jdbi.setSqlLogger(buildSQLLogger(environment.metrics(), nameStrategy));
  
          if (configuration.isAutoCommentsEnabled()) {
              final TemplateEngine original = jdbi.getConfig(SqlStatements.class).getTemplateEngine();
              jdbi.setTemplateEngine(new NamePrependingTemplateEngine(original));
          }
  
          configure(jdbi);
  
          return jdbi;
      }