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
- CommentEmitter.cs
- LinqDataSourceUpdateEventArgs.cs
- StatusBarItem.cs
- FontNamesConverter.cs
- Binding.cs
- UndirectedGraph.cs
- Rfc2898DeriveBytes.cs
- PaintValueEventArgs.cs
- SymDocumentType.cs
- DataGridToolTip.cs
- Emitter.cs
- TableRow.cs
- SvcMapFileLoader.cs
- PermissionSet.cs
- SQLStringStorage.cs
- TCPClient.cs
- InvokeGenerator.cs
- URLMembershipCondition.cs
- PerformanceCounterPermissionAttribute.cs
- XmlWriter.cs
- TransformerInfoCollection.cs
- SqlClientPermission.cs
- HttpListenerException.cs
- ControlPersister.cs
- ZipArchive.cs
- OracleBoolean.cs
- EventLogEntry.cs
- DockProviderWrapper.cs
- GeometryGroup.cs
- ClientBuildManagerCallback.cs
- ApplicationTrust.cs
- SerialPinChanges.cs
- AssemblyAttributes.cs
- ProcessModuleCollection.cs
- XmlSchemaValidator.cs
- DbProviderFactory.cs
- XPathCompileException.cs
- EntityDataReader.cs
- ResXResourceWriter.cs
- AutoSizeToolBoxItem.cs
- SimpleType.cs
- OfTypeExpression.cs
- AudioLevelUpdatedEventArgs.cs
- MembershipSection.cs
- RawTextInputReport.cs
- NativeMethodsCLR.cs
- DnsPermission.cs
- StackSpiller.Generated.cs
- IntSecurity.cs
- EastAsianLunisolarCalendar.cs
- FunctionNode.cs
- CheckBoxField.cs
- fixedPageContentExtractor.cs
- DataGridViewBand.cs
- Transform.cs
- SignedInfo.cs
- SettingsProperty.cs
- CopyOfAction.cs
- MappingSource.cs
- UnknownWrapper.cs
- NameGenerator.cs
- DeadCharTextComposition.cs
- BitFlagsGenerator.cs
- RestClientProxyHandler.cs
- Serializer.cs
- EncoderBestFitFallback.cs
- XmlLoader.cs
- Model3D.cs
- LicenseContext.cs
- WebPartHeaderCloseVerb.cs
- XmlSchemaAnyAttribute.cs
- PolicyDesigner.cs
- NameNode.cs
- VirtualizingPanel.cs
- ClaimSet.cs
- HandlerBase.cs
- RbTree.cs
- DbCommandTree.cs
- DataGridViewRowsAddedEventArgs.cs
- FloatMinMaxAggregationOperator.cs
- FrameworkObject.cs
- DataKeyPropertyAttribute.cs
- AuthenticationManager.cs
- AuthenticationManager.cs
- ClientScriptManager.cs
- ScriptResourceHandler.cs
- ApplicationSecurityManager.cs
- XmlAnyAttributeAttribute.cs
- ConstraintEnumerator.cs
- ConnectionPoolManager.cs
- CalendarDay.cs
- FileDialogCustomPlace.cs
- XmlTextReaderImpl.cs
- VariableExpressionConverter.cs
- Trigger.cs
- XmlNullResolver.cs
- Common.cs
- PersistNameAttribute.cs
- Scheduling.cs
- SequentialUshortCollection.cs