Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / Util / ProviderUtil.cs / 1305376 / ProviderUtil.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* * Sec * * Copyright (c) 1998-1999, Microsoft Corporation * */ namespace System.Web.Util { using System.Collections.Specialized; using System.Web.Mail; using System.Configuration; using System.Globalization; internal static class ProviderUtil { internal const int Infinite = Int32.MaxValue; internal static void GetAndRemoveStringAttribute(NameValueCollection config, string attrib, string providerName, ref string val) { val = config.Get(attrib); config.Remove(attrib); } internal static void GetAndRemovePositiveAttribute(NameValueCollection config, string attrib, string providerName, ref int val) { GetPositiveAttribute(config, attrib, providerName, ref val); config.Remove(attrib); } internal static void GetPositiveAttribute(NameValueCollection config, string attrib, string providerName, ref int val) { string s = config.Get(attrib); int t; if (s == null) { return; } try { t = Convert.ToInt32(s, CultureInfo.InvariantCulture); } catch (Exception e){ if (e is ArgumentException || e is FormatException || e is OverflowException) { throw new ConfigurationErrorsException( SR.GetString(SR.Invalid_provider_positive_attributes, attrib, providerName)); } else { throw; } } if (t < 0) { throw new ConfigurationErrorsException( SR.GetString(SR.Invalid_provider_positive_attributes, attrib, providerName)); } val = t; } internal static void GetAndRemovePositiveOrInfiniteAttribute(NameValueCollection config, string attrib, string providerName, ref int val) { GetPositiveOrInfiniteAttribute(config, attrib, providerName, ref val); config.Remove(attrib); } internal static void GetPositiveOrInfiniteAttribute(NameValueCollection config, string attrib, string providerName, ref int val) { string s = config.Get(attrib); int t; if (s == null) { return; } if (s == "Infinite") { t = ProviderUtil.Infinite; } else { try { t = Convert.ToInt32(s, CultureInfo.InvariantCulture); } catch (Exception e){ if (e is ArgumentException || e is FormatException || e is OverflowException) { throw new ConfigurationErrorsException( SR.GetString(SR.Invalid_provider_positive_attributes, attrib, providerName)); } else { throw; } } if (t < 0) { throw new ConfigurationErrorsException( SR.GetString(SR.Invalid_provider_positive_attributes, attrib, providerName)); } } val = t; } internal static void GetAndRemoveNonZeroPositiveOrInfiniteAttribute(NameValueCollection config, string attrib, string providerName, ref int val) { GetNonZeroPositiveOrInfiniteAttribute(config, attrib, providerName, ref val); config.Remove(attrib); } internal static void GetNonZeroPositiveOrInfiniteAttribute(NameValueCollection config, string attrib, string providerName, ref int val) { string s = config.Get(attrib); int t; if (s == null) { return; } if (s == "Infinite") { t = ProviderUtil.Infinite; } else { try { t = Convert.ToInt32(s, CultureInfo.InvariantCulture); } catch (Exception e){ if (e is ArgumentException || e is FormatException || e is OverflowException) { throw new ConfigurationErrorsException( SR.GetString(SR.Invalid_provider_non_zero_positive_attributes, attrib, providerName)); } else { throw; } } if (t <= 0) { throw new ConfigurationErrorsException( SR.GetString(SR.Invalid_provider_non_zero_positive_attributes, attrib, providerName)); } } val = t; } internal static void GetAndRemoveBooleanAttribute(NameValueCollection config, string attrib, string providerName, ref bool val) { GetBooleanAttribute(config, attrib, providerName, ref val); config.Remove(attrib); } internal static void GetBooleanAttribute(NameValueCollection config, string attrib, string providerName, ref bool val) { string s = config.Get(attrib); if (s == null) { return; } if (s == "true") { val = true; } else if (s == "false") { val = false; } else { throw new ConfigurationErrorsException(SR.GetString(SR.Invalid_provider_attribute, attrib, providerName, s)); } } internal static void GetAndRemoveRequiredNonEmptyStringAttribute(NameValueCollection config, string attrib, string providerName, ref string val) { GetRequiredNonEmptyStringAttribute(config, attrib, providerName, ref val); config.Remove(attrib); } internal static void GetRequiredNonEmptyStringAttribute(NameValueCollection config, string attrib, string providerName, ref string val) { GetNonEmptyStringAttributeInternal(config, attrib, providerName, ref val, true); } private static void GetNonEmptyStringAttributeInternal(NameValueCollection config, string attrib, string providerName, ref string val, bool required) { string s = config.Get(attrib); // If it's (null and required) -OR- (empty string) we throw if ((s == null && required) || (s.Length == 0)) { throw new ConfigurationErrorsException( SR.GetString(SR.Provider_missing_attribute, attrib, providerName)); } val = s; } internal static void CheckUnrecognizedAttributes(NameValueCollection config, string providerName) { if (config.Count > 0) { string attribUnrecognized = config.GetKey(0); if (!String.IsNullOrEmpty(attribUnrecognized)) throw new ConfigurationErrorsException( SR.GetString(SR.Unexpected_provider_attribute, attribUnrecognized, providerName)); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- RequestQueue.cs
- PeerContact.cs
- SiblingIterators.cs
- NativeCppClassAttribute.cs
- UiaCoreTypesApi.cs
- QueryProcessor.cs
- StretchValidation.cs
- Exception.cs
- StylusPointPropertyInfoDefaults.cs
- CompositeClientFormatter.cs
- StyleConverter.cs
- TraceLog.cs
- HttpWebRequestElement.cs
- OperandQuery.cs
- TriggerCollection.cs
- ObjRef.cs
- XPathAncestorIterator.cs
- Operator.cs
- XPathDescendantIterator.cs
- DataStorage.cs
- WindowsComboBox.cs
- ProtocolsSection.cs
- PersianCalendar.cs
- ToolStripOverflowButton.cs
- MinimizableAttributeTypeConverter.cs
- WebServiceErrorEvent.cs
- PersonalizationDictionary.cs
- SafeProcessHandle.cs
- ReservationNotFoundException.cs
- RootBuilder.cs
- MenuItemBindingCollection.cs
- AttributedMetaModel.cs
- DataGridColumnCollection.cs
- KeyValuePairs.cs
- DesignerActionPanel.cs
- PasswordRecovery.cs
- Funcletizer.cs
- DataGridViewComboBoxCell.cs
- AssemblyName.cs
- xsdvalidator.cs
- CreateRefExpr.cs
- RoutedEventValueSerializer.cs
- GatewayDefinition.cs
- COM2IProvidePropertyBuilderHandler.cs
- WebPartEditorOkVerb.cs
- IdentityReference.cs
- UserControl.cs
- EventLogTraceListener.cs
- DataList.cs
- ColumnWidthChangingEvent.cs
- CodeComment.cs
- Journaling.cs
- ButtonFieldBase.cs
- ClipboardProcessor.cs
- ParameterCollectionEditor.cs
- GridViewUpdateEventArgs.cs
- TextDpi.cs
- HeaderedContentControl.cs
- ErrorHandler.cs
- ICollection.cs
- IsolatedStoragePermission.cs
- CatalogPartCollection.cs
- EventMap.cs
- MaskPropertyEditor.cs
- EmissiveMaterial.cs
- Itemizer.cs
- XmlTextWriter.cs
- ClientRuntimeConfig.cs
- LambdaCompiler.Address.cs
- infer.cs
- Int16Storage.cs
- TypeNameConverter.cs
- HttpUnhandledOperationInvoker.cs
- ComplexBindingPropertiesAttribute.cs
- ConfigXmlAttribute.cs
- ListViewAutomationPeer.cs
- Aggregates.cs
- ProcessManager.cs
- MetadataArtifactLoaderCompositeFile.cs
- XmlDataDocument.cs
- LicFileLicenseProvider.cs
- PolyLineSegmentFigureLogic.cs
- WorkflowInstanceProxy.cs
- PublisherMembershipCondition.cs
- SqlServices.cs
- TabControlCancelEvent.cs
- WinFormsComponentEditor.cs
- ConfigurationSchemaErrors.cs
- DrawToolTipEventArgs.cs
- BrowserCapabilitiesFactoryBase.cs
- HwndProxyElementProvider.cs
- LowerCaseStringConverter.cs
- Sequence.cs
- SspiHelper.cs
- HandleValueEditor.cs
- UnionCqlBlock.cs
- RNGCryptoServiceProvider.cs
- InvalidEnumArgumentException.cs
- DataGridViewCheckBoxCell.cs
- BinaryObjectInfo.cs