/// <summary>
        /// Validate and populates the headers.
        /// </summary>
        protected override void OnValidateAndPopulateHeaders()
        {
            if (!this.Headers.ContainsKey(MpnsRegistrationDescription.NotificationClass))
            {
                AddNotificationTypeHeader(RegistrationSDKHelper.DetectMpnsTemplateRegistationType(this.Body, SRClient.NotSupportedXMLFormatAsPayloadForMpns));

                // add xml declaration section if necessary
                this.Body = RegistrationSDKHelper.AddDeclarationToXml(this.Body);
            }
        }
        /// <summary>
        /// Validate and populates the headers.
        /// </summary>
        protected override void OnValidateAndPopulateHeaders()
        {
            if (this.Headers.ContainsKey(WnsTypeName) &&
                this.Headers[WnsTypeName].Equals(Raw, StringComparison.OrdinalIgnoreCase))
            {
                //raw notification
                this.AddNotificationTypeHeader(WindowsTemplateBodyType.Raw);
                this.ContentType = "application/octet-stream";
            }
            else
            {
                //non-raw notification
                AddNotificationTypeHeader(RegistrationSDKHelper.DetectWindowsTemplateRegistationType(this.Body, SRClient.NotSupportedXMLFormatAsPayload));

                // add xml declaration section if necessary
                this.Body = RegistrationSDKHelper.AddDeclarationToXml(this.Body);
            }
        }