protected override void OnValidateAndPopulateHeaders()

in src/Microsoft.Azure.NotificationHubs/AppleNotification.cs [129:160]


        protected override void OnValidateAndPopulateHeaders()
        {
            if (this.Expiry != null)
            {
                this.AddOrUpdateHeader(AppleRegistrationDescription.ExpiryHeader, this.Expiry.Value.ToString(CultureInfo.InvariantCulture));
            }

            if (this.Priority != null)
            {
                this.AddOrUpdateHeader(AppleRegistrationDescription.PriorityHeader, this.Priority.Value.ToString(CultureInfo.InvariantCulture));
            }

            // Validate apns-expiration header is in right format.
            if (this.Headers.ContainsKey(AppleRegistrationDescription.ApnsExpiryHeader))
            {
                int expiry;
                if (!int.TryParse(this.Headers[AppleRegistrationDescription.ApnsExpiryHeader], out expiry))
                {
                    throw new InvalidDataContractException(SRClient.ApnsExpiryHeaderDeserializationError);
                }
            }

            //  Validate apns-priority is in right format.
            if (this.Headers.ContainsKey(AppleRegistrationDescription.ApnsPriorityHeader))
            {
                byte priority;
                if (!byte.TryParse(this.Headers[AppleRegistrationDescription.ApnsPriorityHeader], out priority))
                {
                    throw new InvalidDataContractException(SRClient.PriorityDeserializationError);
                }
            }
        }