An interface for use by a message handler to allow
it to save and restore any message-specific data.
A handler can have message-specific data that
needs to be associated the message being processed.
The handler can keep this message-specific data
in the Messagecontext object by adding the
data to the user data table via the
MessageContext method.
All the engine components are stateless across the executions and all the states should be kept in the
Contexts, there are three context Global, Session and Message.