code: @Override
    public CloudSpannerConnection connect(String url, Properties info) throws SQLException {
      if (!acceptsURL(url))
        return null;
      // Parse URL
      ConnectionProperties properties = ConnectionProperties.parse(url);
      // Get connection properties from properties
      properties.setAdditionalConnectionProperties(info);
  
      CloudSpannerDatabaseSpecification database = new CloudSpannerDatabaseSpecification(
          properties.project, properties.instance, properties.database);
      CloudSpannerConnection connection = new CloudSpannerConnection(this, url, database,
          properties.keyFile, properties.oauthToken, info, properties.useCustomHost);
      connection.setSimulateProductName(properties.productName);
      connection.setSimulateMajorVersion(properties.majorVersion);
      connection.setSimulateMinorVersion(properties.minorVersion);
      connection.setAllowExtendedMode(properties.allowExtendedMode);
      connection.setOriginalAllowExtendedMode(properties.allowExtendedMode);
      connection.setAsyncDdlOperations(properties.asyncDdlOperations);
      connection.setOriginalAsyncDdlOperations(properties.asyncDdlOperations);
      connection.setAutoBatchDdlOperations(properties.autoBatchDdlOperations);
      connection.setOriginalAutoBatchDdlOperations(properties.autoBatchDdlOperations);
      connection.setReportDefaultSchemaAsNull(properties.reportDefaultSchemaAsNull);
      connection.setOriginalReportDefaultSchemaAsNull(properties.reportDefaultSchemaAsNull);
      connection.setBatchReadOnly(properties.batchReadOnlyMode);
      connection.setOriginalBatchReadOnly(properties.batchReadOnlyMode);
      connection.setUseCustomHost(properties.useCustomHost);
      registerConnection(connection);
  
      return connection;
    }
docs: Connects to a Google Cloud Spanner database.
  
  @param url Connection URL in the form jdbc:cloudspanner://localhost;Project
  =projectId;Instance=instanceId ;Database=databaseName;PvtKeyPath
  =path_to_key_file;SimulateProductName=product_name
  @param info Additional connection properties that will be set on the new connection
  @return An open {@link CloudSpannerConnection}
  @throws SQLException if an error occurs while connecting to Google Cloud Spanner