Why is it an inner class?
From other side, how about to introduce `IntegrationExceptionEvent` abstraction ?
One more 'friendly' thought. How about allow to end-developer inject their own `IntegrationEvent` implementation class for all our 'event producers'?