changed data source manager to accept more parameters