refactored AbstractManagedServiceFactory