Refactor to allow inject thorugh setters