internal static void MobileOperatorIdSetter(object value, IPropertyBag propertyBag)
        {
            TextMessagingSettingsVersion1Point0 settings = (TextMessagingSettingsVersion1Point0)propertyBag[TextMessagingAccountSchema.TextMessagingSettings];
            string carrier = (-1 == (int)value) ? null : ((int)value).ToString("00000");

            TextMessagingAccount.GetWritablePossibleRecipient(settings).Carrier = carrier;
        }
        internal static void NotificationPhoneNumberSetter(object value, IPropertyBag propertyBag)
        {
            TextMessagingSettingsVersion1Point0 textMessagingSettingsVersion1Point = (TextMessagingSettingsVersion1Point0)propertyBag[TextMessagingAccountSchema.TextMessagingSettings];

            if (value == null)
            {
                PossibleRecipient.MarkEffective(textMessagingSettingsVersion1Point.MachineToPersonMessagingPolicies.PossibleRecipients, false);
                return;
            }
            bool flag = false;
            PossibleRecipient writablePossibleRecipient = TextMessagingAccount.GetWritablePossibleRecipient(textMessagingSettingsVersion1Point, out flag);

            if (flag)
            {
                writablePossibleRecipient.PhoneNumber = (E164Number)value;
            }
            else
            {
                PossibleRecipient mathed = PossibleRecipient.GetMathed(textMessagingSettingsVersion1Point.MachineToPersonMessagingPolicies.PossibleRecipients, (E164Number)value, false);
                PossibleRecipient.MarkEffective(textMessagingSettingsVersion1Point.MachineToPersonMessagingPolicies.PossibleRecipients, false);
                if (mathed == null)
                {
                    textMessagingSettingsVersion1Point.MachineToPersonMessagingPolicies.PossibleRecipients.Add(new PossibleRecipient(true, DateTime.UtcNow, writablePossibleRecipient.Region, writablePossibleRecipient.Carrier, (E164Number)value, false, null, null, null));
                }
                else
                {
                    mathed.Region  = writablePossibleRecipient.Region;
                    mathed.Carrier = writablePossibleRecipient.Carrier;
                    mathed.MarkEffective(true);
                }
            }
            PossibleRecipient.PurgeNonEffectiveBefore(textMessagingSettingsVersion1Point.MachineToPersonMessagingPolicies.PossibleRecipients, DateTime.UtcNow - TimeSpan.FromDays(7.0), 10);
        }
        internal static void CountryRegionIdSetter(object value, IPropertyBag propertyBag)
        {
            TextMessagingSettingsVersion1Point0 settings = (TextMessagingSettingsVersion1Point0)propertyBag[TextMessagingAccountSchema.TextMessagingSettings];
            string region = (value == null) ? null : ((RegionInfo)value).TwoLetterISORegionName;

            TextMessagingAccount.GetWritablePossibleRecipient(settings).Region = region;
        }
        private static PossibleRecipient GetWritablePossibleRecipient(TextMessagingSettingsVersion1Point0 settings)
        {
            bool flag = false;

            return(TextMessagingAccount.GetWritablePossibleRecipient(settings, out flag));
        }