Use Interface instead of concrete EventDispatcher