refactored DataSourceManagedServiceFactory - extends the abstract
factory