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);
}
}
}