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
- StringUtil.cs
- MembershipValidatePasswordEventArgs.cs
- MiniCustomAttributeInfo.cs
- TextDpi.cs
- ColorTranslator.cs
- MachineKeySection.cs
- NamespaceEmitter.cs
- CacheOutputQuery.cs
- PointConverter.cs
- AssemblyCacheEntry.cs
- Rectangle.cs
- CompModSwitches.cs
- UpdatableWrapper.cs
- ZipIOLocalFileBlock.cs
- InputLanguage.cs
- GB18030Encoding.cs
- GridViewRowPresenter.cs
- XmlSchemaSimpleTypeList.cs
- PerformanceCounterManager.cs
- Triplet.cs
- NumberFunctions.cs
- ProcessRequestArgs.cs
- ScalarConstant.cs
- PrincipalPermission.cs
- FloaterBaseParagraph.cs
- PersonalizationStateInfo.cs
- InfoCardServiceInstallComponent.cs
- Site.cs
- ContextInformation.cs
- InstancePersistenceEvent.cs
- SafeNativeMemoryHandle.cs
- X509InitiatorCertificateClientElement.cs
- MapPathBasedVirtualPathProvider.cs
- ConnectionStringSettingsCollection.cs
- CodeMethodReturnStatement.cs
- StylusShape.cs
- BooleanAnimationUsingKeyFrames.cs
- DetailsViewCommandEventArgs.cs
- KeyboardDevice.cs
- ToolstripProfessionalRenderer.cs
- QilList.cs
- ExclusiveCanonicalizationTransform.cs
- ThicknessAnimation.cs
- _AcceptOverlappedAsyncResult.cs
- ObjectStateFormatter.cs
- FilterException.cs
- IOException.cs
- SafeEventLogReadHandle.cs
- FunctionCommandText.cs
- ServiceReference.cs
- CapabilitiesPattern.cs
- SetStoryboardSpeedRatio.cs
- DataGridViewCheckBoxColumn.cs
- FormatterServices.cs
- X509AsymmetricSecurityKey.cs
- MessagePropertyFilter.cs
- DynamicValueConverter.cs
- OpacityConverter.cs
- NumericUpDownAccelerationCollection.cs
- SqlException.cs
- OutputCacheProfile.cs
- VideoDrawing.cs
- PageParser.cs
- PolyLineSegmentFigureLogic.cs
- SRef.cs
- ValidationManager.cs
- ToolStripSplitStackLayout.cs
- ConfigXmlText.cs
- ThreadSafeList.cs
- metadatamappinghashervisitor.hashsourcebuilder.cs
- UserInitiatedRoutedEventPermissionAttribute.cs
- HtmlImage.cs
- ExtensionQuery.cs
- AuthenticationService.cs
- SerialPinChanges.cs
- XmlSchemaElement.cs
- StandardMenuStripVerb.cs
- ZipIOExtraFieldElement.cs
- DesignerLabelAdapter.cs
- OracleRowUpdatingEventArgs.cs
- EventEntry.cs
- HtmlInputRadioButton.cs
- ThreadExceptionDialog.cs
- SafeSerializationManager.cs
- ZipArchive.cs
- CommandHelper.cs
- smtppermission.cs
- SafeFileMappingHandle.cs
- CollectionsUtil.cs
- SQLInt32Storage.cs
- TextOutput.cs
- HostedBindingBehavior.cs
- SendSecurityHeaderElement.cs
- EnterpriseServicesHelper.cs
- HttpCapabilitiesSectionHandler.cs
- PointKeyFrameCollection.cs
- SHA1.cs
- PropertyMapper.cs
- DataGridDefaultColumnWidthTypeConverter.cs
- MenuItemCollectionEditor.cs