Refactoring the factory creation
Implement setter injection