Refactor to SimpleListener