split up MessageConsumer construction