Share via


Message Class

 

Core message class. In general, this class should not be sub-classed directly. AsynchronousMessage should be used for one-way (no reply) messages (such as DDR or status) and SynchronousMessageRequest with SynchronousMessageReply should be used for two-way, synchronous, messages (such as policy or location).

Namespace:   Microsoft.ConfigurationManagement.Messaging.Framework
Assembly:  Microsoft.ConfigurationManagement.Messaging (in Microsoft.ConfigurationManagement.Messaging.dll)

Inheritance Hierarchy

System.Object
  Microsoft.ConfigurationManagement.Messaging.Framework.Message
    Microsoft.ConfigurationManagement.Messaging.Framework.AdhocMessage
    Microsoft.ConfigurationManagement.Messaging.Framework.AsynchronousMessage
    Microsoft.ConfigurationManagement.Messaging.Framework.SynchronousMessageReply
    Microsoft.ConfigurationManagement.Messaging.Framework.SynchronousMessageRequest
    Microsoft.ConfigurationManagement.Messaging.Messages.Ccm.CcmMessage

Syntax

[SerializableAttribute]
[MessageSupportAttribute(MessageSupportStatus.Unknown)]
public abstract class Message : IMessage, IMessageBase, IDeserializationCallback
[SerializableAttribute]
[MessageSupportAttribute(MessageSupportStatus::Unknown)]
public ref class Message abstract : IMessage, IMessageBase, IDeserializationCallback
<SerializableAttribute>
<MessageSupportAttribute(MessageSupportStatus.Unknown)>
Public MustInherit Class Message
    Implements IMessage, IMessageBase, IDeserializationCallback

Properties

Name Description
System_CAPS_pubproperty Attachments

Gets message attachments.

System_CAPS_pubproperty Body

Gets the message body. This property should not be empty, with limited exceptions.

System_CAPS_pubproperty MessageId

Gets the internal ID of a message.

System_CAPS_protproperty PostSendActionsSupported

Gets a value that indicates whether the message supports post-send actions.

System_CAPS_pubproperty Priority

Gets the priority for a message. This property is only used for reference by senders and has no effect on the message.

System_CAPS_pubproperty SenderCallback

Gets a sender callback for a message. This property is null unless a message is in the process of being sent.

System_CAPS_pubproperty SenderType

Gets the sender type for a message. This property is only used for reference by senders and has no effect on the message.

System_CAPS_pubproperty Settings

Gets message settings.

System_CAPS_pubproperty SiteCode

Gets or sets the site code to use for sending a message. Some messages require this property.

System_CAPS_pubproperty SmsId

Gets or sets the SMSID to use for signing and sending a message.

System_CAPS_protproperty SupportsInlineSerializers

Gets a value that indicates whether Serialize() is called on send and DeserializeMessageBody is called on receive.

The default setting for this property is true. Override to false with caution.

Methods

Name Description
System_CAPS_pubmethod AddCertificateToMessage(MessageCertificateX509, CertificatePurposes)

Adds a certificate to the message.

System_CAPS_pubmethod AddCertificateToMessage(MessageCertificateX509, CertificatePurposes, Boolean)

Adds a certificate to a message with the option to disable any intelligence.

System_CAPS_pubmethod CloneBase()

Creates a clone of a message.

Important: This method is not the same as nor does it behave the same as Clone. That is why this message type does not implement ICloneable. It is not recommended that any code outside of Messaging core code use this function without understanding how it works, what its limitations are, and why it's being used.

Note: If you're considering this method, ensure that you have evaluated CloneByRef which you might want to use instead.

System_CAPS_pubmethod CloneByRef(IMessage)

Clones a reference of a message. Use this method to create a copy of an existing message, especially one of a different type, into this message.

Important: This method is not the same as nor does it behave the same as Clone. That is why this message type does not implement ICloneable. It is not recommended that any code outside of Messaging core code use this function without understanding how it works, what its limitations are, and why it's being used.

System_CAPS_pubmethod CloneByRef(IMessage, MessageCloneOptions)

Clones a reference of a message. Use this method to create a copy of an existing message, especially one of a different type, into this message.

Important: This method is not the same as nor does it behave the same as Clone. That is why this message type does not implement ICloneable. It is not recommended that any code outside of Messaging core code use this function without understanding how it works, what its limitations are, and why it's being used.

System_CAPS_protmethod CriticalSection(Action)

Invokes a statement within a thread-safe critical section.

System_CAPS_protmethod CriticalSection<T>(Func<T>)

Invokes a statement within a thread-safe critical section.

System_CAPS_pubmethod DeserializeMessageBody()

Internal handler for deserializing a payload into its object format. This method should only be called by external code under exceptional circumstances.

System_CAPS_pubmethod Discover()

Performs discovery, if supported by the message.

System_CAPS_pubmethod Equals(Object)

(Inherited from Object.)

System_CAPS_protmethod Finalize()

(Inherited from Object.)

System_CAPS_pubmethod GetCertificateFromMessage(CertificatePurposes)

Retrieves the X509-based certificate from a message.

System_CAPS_pubmethod GetHashCode()

(Inherited from Object.)

System_CAPS_pubmethod GetType()

(Inherited from Object.)

System_CAPS_protmethod MemberwiseClone()

(Inherited from Object.)

System_CAPS_pubmethod OnDeserialization(Object)

Ensures validity checks are never performed on deserialization.

System_CAPS_pubmethod PostSendActions(IMessageSender, Boolean)

Actions that run after a message is sent. This is an asynchronous action; use with caution.

System_CAPS_pubmethod PreSendActions()

Actions that run before the message is sent. This operation is synchronous and blocking.

System_CAPS_protmethod SendInlineStatusMessage(SmsEvent, IMessageSender)

Sends a status message. This is a synchronous operation and should be called from a separate thread to avoid blocking.

System_CAPS_protmethod SendInlineStatusMessage(StatusMessage, IMessageSender)

Sends a status message. This is a synchronous operation and should be called from a separate thread to avoid blocking.

System_CAPS_protmethod SendMessageAsync(IMessageSender)

Sends a message by using the specified sender.

System_CAPS_protmethod SendMessageSync<T>(IMessageSender)

Sends a message by using the specified sender.

System_CAPS_pubmethod SerializeMessageBody()

Internal handler for serializing the message payload to its wire-level format. This method should only be called by external code under exceptional circumstances.

System_CAPS_protmethod SimpleBodyDeserialization<T>()

Helper function that deserializes an object from the existing payload.

System_CAPS_protmethod SimpleBodyDeserialization<T>(DeserializationArguments)

Helper function that deserializes an object from the existing payload.

System_CAPS_protmethod SimpleObjectSerialization(Object)

Helper function that serializes an object to a payload.

System_CAPS_pubmethod ToString()

(Inherited from Object.)

System_CAPS_pubmethod Validate()

Obsolete. Validates that all required message settings are present and meet the requirements. If this method fails, the message will likely fail in being sent or processed by the site or management point.

System_CAPS_pubmethod Validate(IMessageSender)

Validates that all required message settings are present and meet the requirements. If this validation fails, the message is almost certain to fail in being sent or processed by the site or management point.

Fields

Name Description
System_CAPS_protfield Synchronizer

Synchronizer to use for locking in thread-safe operations.

Explicit Interface Implementations

Name Description
System_CAPS_pubinterfaceSystem_CAPS_privmethod IMessage.SendMessage(IMessageSender)

Sends a message by using the specified sender.

System_CAPS_pubinterfaceSystem_CAPS_privproperty IMessageBase.Settings

Gets message properties and settings.

Thread Safety

Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

See Also

Microsoft.ConfigurationManagement.Messaging.Framework Namespace

Return to top