Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / Configuration / System / Configuration / ConfigurationSchemaErrors.cs / 1 / ConfigurationSchemaErrors.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Configuration { using System.Collections; using System.Collections.Generic; using System.Collections.Specialized; using System.Text; internal class ConfigurationSchemaErrors { // Errors with ExceptionAction.Local are logged to this list. // This list is reset when processing of a section is complete. // Errors on this list may be added to the _errorsAll list // when RetrieveAndResetLocalErrors is called. private List_errorsLocal; // Errors with ExceptionAction.Global are logged to this list. private List _errorsGlobal; // All errors related to a config file are logged to this list. // This includes all global errors, all non-specific errors, // and local errors for input that applies to this config file. private List _errorsAll; internal ConfigurationSchemaErrors() {} internal bool HasLocalErrors { get { return ErrorsHelper.GetHasErrors(_errorsLocal); } } internal bool HasGlobalErrors { get { return ErrorsHelper.GetHasErrors(_errorsGlobal); } } private bool HasAllErrors { get { return ErrorsHelper.GetHasErrors(_errorsAll); } } internal int GlobalErrorCount { get { return ErrorsHelper.GetErrorCount(_errorsGlobal); } } // // Add a configuration Error. // internal void AddError(ConfigurationException ce, ExceptionAction action) { switch (action) { case ExceptionAction.Global: ErrorsHelper.AddError(ref _errorsAll, ce); ErrorsHelper.AddError(ref _errorsGlobal, ce); break; case ExceptionAction.NonSpecific: ErrorsHelper.AddError(ref _errorsAll, ce); break; case ExceptionAction.Local: ErrorsHelper.AddError(ref _errorsLocal, ce); break; } } internal void SetSingleGlobalError(ConfigurationException ce) { _errorsAll = null; _errorsLocal = null; _errorsGlobal = null; AddError(ce, ExceptionAction.Global); } internal bool HasErrors(bool ignoreLocal) { if (ignoreLocal) { return HasGlobalErrors; } else { return HasAllErrors; } } // ThrowIfErrors // // Throw if Errors were detected and remembered. // // Parameters: // IgnoreLocal - Should we be using the local errors also to // detemine if we should throw? // // Note: We will always return all the errors, no matter what // IgnoreLocal is. // internal void ThrowIfErrors(bool ignoreLocal) { if (HasErrors(ignoreLocal)) { if (HasGlobalErrors) { // Throw just the global errors, as they invalidate // all other config file parsing. throw new ConfigurationErrorsException(_errorsGlobal); } else { // Throw all errors no matter what throw new ConfigurationErrorsException(_errorsAll); } } } // RetrieveAndResetLocalErrors // // Retrieve the Local Errors, and Reset them to none. // internal List RetrieveAndResetLocalErrors(bool keepLocalErrors) { List list = _errorsLocal; _errorsLocal = null; if (keepLocalErrors) { ErrorsHelper.AddErrors(ref _errorsAll, list); } return list; } // // Add errors that have been saved for a specific section. // internal void AddSavedLocalErrors(ICollection coll) { ErrorsHelper.AddErrors(ref _errorsAll, coll); } // ResetLocalErrors // // Remove all the Local Errors, so we can start from scratch // internal void ResetLocalErrors() { RetrieveAndResetLocalErrors(false); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Configuration { using System.Collections; using System.Collections.Generic; using System.Collections.Specialized; using System.Text; internal class ConfigurationSchemaErrors { // Errors with ExceptionAction.Local are logged to this list. // This list is reset when processing of a section is complete. // Errors on this list may be added to the _errorsAll list // when RetrieveAndResetLocalErrors is called. private List_errorsLocal; // Errors with ExceptionAction.Global are logged to this list. private List _errorsGlobal; // All errors related to a config file are logged to this list. // This includes all global errors, all non-specific errors, // and local errors for input that applies to this config file. private List _errorsAll; internal ConfigurationSchemaErrors() {} internal bool HasLocalErrors { get { return ErrorsHelper.GetHasErrors(_errorsLocal); } } internal bool HasGlobalErrors { get { return ErrorsHelper.GetHasErrors(_errorsGlobal); } } private bool HasAllErrors { get { return ErrorsHelper.GetHasErrors(_errorsAll); } } internal int GlobalErrorCount { get { return ErrorsHelper.GetErrorCount(_errorsGlobal); } } // // Add a configuration Error. // internal void AddError(ConfigurationException ce, ExceptionAction action) { switch (action) { case ExceptionAction.Global: ErrorsHelper.AddError(ref _errorsAll, ce); ErrorsHelper.AddError(ref _errorsGlobal, ce); break; case ExceptionAction.NonSpecific: ErrorsHelper.AddError(ref _errorsAll, ce); break; case ExceptionAction.Local: ErrorsHelper.AddError(ref _errorsLocal, ce); break; } } internal void SetSingleGlobalError(ConfigurationException ce) { _errorsAll = null; _errorsLocal = null; _errorsGlobal = null; AddError(ce, ExceptionAction.Global); } internal bool HasErrors(bool ignoreLocal) { if (ignoreLocal) { return HasGlobalErrors; } else { return HasAllErrors; } } // ThrowIfErrors // // Throw if Errors were detected and remembered. // // Parameters: // IgnoreLocal - Should we be using the local errors also to // detemine if we should throw? // // Note: We will always return all the errors, no matter what // IgnoreLocal is. // internal void ThrowIfErrors(bool ignoreLocal) { if (HasErrors(ignoreLocal)) { if (HasGlobalErrors) { // Throw just the global errors, as they invalidate // all other config file parsing. throw new ConfigurationErrorsException(_errorsGlobal); } else { // Throw all errors no matter what throw new ConfigurationErrorsException(_errorsAll); } } } // RetrieveAndResetLocalErrors // // Retrieve the Local Errors, and Reset them to none. // internal List RetrieveAndResetLocalErrors(bool keepLocalErrors) { List list = _errorsLocal; _errorsLocal = null; if (keepLocalErrors) { ErrorsHelper.AddErrors(ref _errorsAll, list); } return list; } // // Add errors that have been saved for a specific section. // internal void AddSavedLocalErrors(ICollection coll) { ErrorsHelper.AddErrors(ref _errorsAll, coll); } // ResetLocalErrors // // Remove all the Local Errors, so we can start from scratch // internal void ResetLocalErrors() { RetrieveAndResetLocalErrors(false); } } } // 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
- EventLogPermissionAttribute.cs
- ExplicitDiscriminatorMap.cs
- StringUtil.cs
- _SSPISessionCache.cs
- Control.cs
- MsmqDiagnostics.cs
- GridViewRowPresenter.cs
- FrameworkRichTextComposition.cs
- Property.cs
- DistributedTransactionPermission.cs
- ReliableChannelFactory.cs
- HttpRequest.cs
- DataServiceHostWrapper.cs
- AngleUtil.cs
- EventsTab.cs
- BitVector32.cs
- CompilerGlobalScopeAttribute.cs
- RenderingEventArgs.cs
- ModelPerspective.cs
- TextTreeInsertUndoUnit.cs
- IsolatedStorageFileStream.cs
- FixedStringLookup.cs
- AnyReturnReader.cs
- Profiler.cs
- PropertySegmentSerializer.cs
- ProtocolsSection.cs
- Main.cs
- EditorPartCollection.cs
- ArrangedElementCollection.cs
- LinqDataView.cs
- bidPrivateBase.cs
- SourceItem.cs
- DnsPermission.cs
- DataGridViewRowHeightInfoNeededEventArgs.cs
- GeneralTransform2DTo3DTo2D.cs
- TargetControlTypeCache.cs
- FieldAccessException.cs
- StandardOleMarshalObject.cs
- WSTrustFeb2005.cs
- SafeNativeMethodsCLR.cs
- CodeMemberMethod.cs
- ContentElementAutomationPeer.cs
- HttpStreamMessage.cs
- While.cs
- FunctionDetailsReader.cs
- DataGridViewComboBoxColumnDesigner.cs
- ConfigurationException.cs
- Normalization.cs
- ComponentResourceManager.cs
- PageThemeCodeDomTreeGenerator.cs
- TemplateEditingFrame.cs
- PenCursorManager.cs
- MailDefinition.cs
- sqlmetadatafactory.cs
- MarshalByRefObject.cs
- DecimalConverter.cs
- ServiceDescriptionData.cs
- ToolboxDataAttribute.cs
- Serializer.cs
- Converter.cs
- StructuredType.cs
- ChangeBlockUndoRecord.cs
- SignedPkcs7.cs
- AuthenticateEventArgs.cs
- XamlSerializationHelper.cs
- DrawingGroup.cs
- DataServiceRequest.cs
- OleTxTransaction.cs
- CompleteWizardStep.cs
- Point3D.cs
- TdsEnums.cs
- LicenseManager.cs
- StorageConditionPropertyMapping.cs
- ParentQuery.cs
- XmlDocumentSerializer.cs
- CryptoHelper.cs
- RSAPKCS1SignatureFormatter.cs
- PropertyItemInternal.cs
- ManagedCodeMarkers.cs
- RewritingSimplifier.cs
- FileChangesMonitor.cs
- BrowserDefinition.cs
- ArrayExtension.cs
- EntityDataSourceState.cs
- diagnosticsswitches.cs
- RootContext.cs
- SerializationStore.cs
- SignedXml.cs
- SqlError.cs
- CheckoutException.cs
- NativeMethods.cs
- DesignerWebPartChrome.cs
- XamlInterfaces.cs
- DBDataPermissionAttribute.cs
- DataControlPagerLinkButton.cs
- TextStore.cs
- CodeThrowExceptionStatement.cs
- WriteLine.cs
- ObjectViewListener.cs
- DbConnectionPoolGroup.cs