protected ConnectionInfo obtainConnectionInfoFromJdbc()

in old/dekaf-core/src/main/java/org/jetbrains/dekaf/jdbc/JdbcIntermediateFacade.java [156:179]


  protected ConnectionInfo obtainConnectionInfoFromJdbc() {
    try {
      Connection connection = myPool.borrow();
      try {
        DatabaseMetaData md = connection.getMetaData();
        String rdbmsName = md.getDatabaseProductName();
        if (rdbmsName == null) rdbmsName = connection.getClass().getName();
        String databaseName = connection.getCatalog();
        String schemaName = getSchema(connection);
        String userName = getUserNameSafe(md);
        Version serverVersion = Version.of(md.getDatabaseMajorVersion(), md.getDatabaseMinorVersion());
        Version driverVersion = Version.of(md.getDriverMajorVersion(), md.getDriverMinorVersion());
        return new ConnectionInfo(rdbmsName,
                                  databaseName, schemaName, userName,
                                  serverVersion, driverVersion);
      }
      finally {
        myPool.release(connection);
      }
    }
    catch (SQLException sqle) {
      throw  myExceptionRecognizer.recognizeException(sqle, "getting brief connection info using JDBC connection metadata");
    }
  }