Implemented the full MessageInterface to prevent dependency on MessageBus.