code: public DataSource createDataSource(Properties props) throws SQLException {
          if (props == null) {
              props = new Properties();
          }
  
          DataSource dataSource = newDataSource();
          setBeanProperties(dataSource, props);
          return dataSource;
      }
docs: Creates a DataSource object.
  
  @param props The properties that define the DataSource implementation to create and how the DataSource is
  configured
  @return The configured DataSource
  @throws SQLException If the data source cannot be created