private static void SetNullFieldsEmpty(Microsoft.Exchange.Data.ApplicationLogic.TextMessaging.TextMessagingHostingData data) { if (data == null) { throw new ArgumentNullException("data"); } if (data.Regions == null) { data.Regions = new TextMessagingHostingDataRegions(); } if (data.Regions.Region == null) { data.Regions.Region = new TextMessagingHostingDataRegionsRegion[0]; } if (data.Carriers == null) { data.Carriers = new TextMessagingHostingDataCarriers(); } if (data.Carriers.Carrier == null) { data.Carriers.Carrier = new TextMessagingHostingDataCarriersCarrier[0]; } if (data.Services == null) { data.Services = new TextMessagingHostingDataServices(); } if (data.Services.Service == null) { data.Services.Service = new TextMessagingHostingDataServicesService[0]; } }
private void AssignHostingData(Microsoft.Exchange.Data.ApplicationLogic.TextMessaging.TextMessagingHostingData data) { if (data == null) { data = new Microsoft.Exchange.Data.ApplicationLogic.TextMessaging.TextMessagingHostingData(); } TextMessagingHostingDataCache.SetNullFieldsEmpty(data); try { this.rwLock.EnterWriteLock(); this.data = data; } finally { try { this.rwLock.ExitWriteLock(); } catch (SynchronizationLockException) { } } }
private static Microsoft.Exchange.Data.ApplicationLogic.TextMessaging.TextMessagingHostingData Convert(Microsoft.Exchange.Data.ApplicationLogic.TextMessaging.HostingData.System.TextMessagingHostingData dataSet) { if (dataSet == null) { throw new ArgumentNullException("dataSet"); } Microsoft.Exchange.Data.ApplicationLogic.TextMessaging.TextMessagingHostingData result = null; XmlSerializer xmlSerializer = new TextMessagingHostingDataSerializer(); using (MemoryStream memoryStream = new MemoryStream()) { dataSet.WriteXml(memoryStream); memoryStream.Seek(0L, SeekOrigin.Begin); result = (Microsoft.Exchange.Data.ApplicationLogic.TextMessaging.TextMessagingHostingData)xmlSerializer.Deserialize(memoryStream); } return(result); }
public TextMessagingHostingDataServicesService GetService(string regionIso2, string carrierId, TextMessagingHostingDataServicesServiceType type) { Microsoft.Exchange.Data.ApplicationLogic.TextMessaging.TextMessagingHostingData hostingData = this.GetHostingData(); if (hostingData == null || hostingData.Services == null || hostingData.Services.Service == null || hostingData.Services.Service.Length == 0) { return(null); } int num = -1; if (!int.TryParse(carrierId, out num)) { return(null); } foreach (TextMessagingHostingDataServicesService textMessagingHostingDataServicesService in hostingData.Services.Service) { if (string.Equals(textMessagingHostingDataServicesService.RegionIso2, regionIso2, StringComparison.OrdinalIgnoreCase) && textMessagingHostingDataServicesService.CarrierIdentity == num && textMessagingHostingDataServicesService.Type == type) { switch (textMessagingHostingDataServicesService.Type) { case TextMessagingHostingDataServicesServiceType.SmtpToSmsGateway: if (textMessagingHostingDataServicesService.SmtpToSmsGateway != null && textMessagingHostingDataServicesService.SmtpToSmsGateway.MessageRendering != null && textMessagingHostingDataServicesService.SmtpToSmsGateway.MessageRendering.Capacity != null && 0 < textMessagingHostingDataServicesService.SmtpToSmsGateway.MessageRendering.Capacity.Length && textMessagingHostingDataServicesService.SmtpToSmsGateway.RecipientAddressing != null && !string.IsNullOrEmpty(textMessagingHostingDataServicesService.SmtpToSmsGateway.RecipientAddressing.SmtpAddress)) { return(textMessagingHostingDataServicesService); } goto IL_104; } return(textMessagingHostingDataServicesService); } IL_104 :; } return(null); }
public TextMessagingHostingDataCarriersCarrier GetCarrier(string id) { Microsoft.Exchange.Data.ApplicationLogic.TextMessaging.TextMessagingHostingData hostingData = this.GetHostingData(); if (hostingData == null || hostingData.Carriers == null || hostingData.Carriers.Carrier == null || hostingData.Carriers.Carrier.Length == 0) { return(null); } int num = -1; if (!int.TryParse(id, out num)) { return(null); } foreach (TextMessagingHostingDataCarriersCarrier textMessagingHostingDataCarriersCarrier in hostingData.Carriers.Carrier) { if (textMessagingHostingDataCarriersCarrier.Identity == num) { return(textMessagingHostingDataCarriersCarrier); } } return(null); }
public TextMessagingHostingDataRegionsRegion GetRegion(string iso2) { Microsoft.Exchange.Data.ApplicationLogic.TextMessaging.TextMessagingHostingData hostingData = this.GetHostingData(); if (hostingData == null || hostingData.Regions == null || hostingData.Regions.Region == null || hostingData.Regions.Region.Length == 0) { return(null); } foreach (TextMessagingHostingDataRegionsRegion textMessagingHostingDataRegionsRegion in hostingData.Regions.Region) { if (string.Equals(textMessagingHostingDataRegionsRegion.Iso2, iso2, StringComparison.OrdinalIgnoreCase)) { return(textMessagingHostingDataRegionsRegion); } } return(null); }