Setter-based dependency injection