加入Mediator 来减少侵入性