/// <summary> /// Gets a <see cref="OfferSettingsDisplay"/> from an <see cref="ExtendedDataCollection"/>. /// </summary> /// <param name="extendedData"> /// The extended data. /// </param> /// <returns> /// The <see cref="OfferSettingsDisplay"/>. /// </returns> internal static OfferSettingsDisplay GetOfferSettingsDisplay(this ExtendedDataCollection extendedData) { if (!extendedData.ContainsCoupon()) { return(null); } try { return (JsonConvert.DeserializeObject <OfferSettingsDisplay>( extendedData.GetValue(Core.Constants.ExtendedDataKeys.CouponReward))); } catch (Exception ex) { LogHelper.Error(typeof(CouponExtendedDataExtensions), "Failed to deserialize coupon from ExtendedDataCollection", ex); throw; } }