[#45990049] Refactor DataSourceConnection to take a DataSource as an argument