Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / CompMod / System / Diagnostics / TraceSwitch.cs / 1 / TraceSwitch.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* */ namespace System.Diagnostics { using System; using System.ComponentModel; using System.Security; using System.Security.Permissions; ////// [SwitchLevel(typeof(TraceLevel))] public class TraceSwitch : Switch { ///Provides a multi-level switch to enable or disable tracing /// and debug output for a compiled application or framework. ////// public TraceSwitch(string displayName, string description) : base(displayName, description) { } public TraceSwitch(string displayName, string description, string defaultSwitchValue) : base(displayName, description, defaultSwitchValue) { } ///Initializes a new instance of the ///class. /// public TraceLevel Level { get { return (TraceLevel)SwitchSetting; } [SecurityPermission(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.UnmanagedCode)] set { if (value < TraceLevel.Off || value > TraceLevel.Verbose) throw new ArgumentException(SR.GetString(SR.TraceSwitchInvalidLevel)); SwitchSetting = (int)value; } } ///Gets or sets the trace /// level that specifies what messages to output for tracing and debugging. ////// public bool TraceError { get { return (Level >= TraceLevel.Error); } } ///Gets a value /// indicating whether the ///is set to /// , , , or /// . /// public bool TraceWarning { get { return (Level >= TraceLevel.Warning); } } ///Gets a value /// indicating whether the ///is set to /// , , or . /// public bool TraceInfo { get { return (Level >= TraceLevel.Info); } } ///Gets a value /// indicating whether the ///is set to /// or . /// public bool TraceVerbose { get { return (Level == TraceLevel.Verbose); } } ///Gets a value /// indicating whether the ///is set to /// . /// protected override void OnSwitchSettingChanged() { int level = SwitchSetting; if (level < (int)TraceLevel.Off) { Trace.WriteLine(SR.GetString(SR.TraceSwitchLevelTooLow, DisplayName)); SwitchSetting = (int)TraceLevel.Off; } else if (level > (int)TraceLevel.Verbose) { Trace.WriteLine(SR.GetString(SR.TraceSwitchLevelTooHigh, DisplayName)); SwitchSetting = (int)TraceLevel.Verbose; } } protected override void OnValueChanged() { SwitchSetting = (int) Enum.Parse(typeof(TraceLevel), Value, true); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ ///// Update the level for this switch. /// ///// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* */ namespace System.Diagnostics { using System; using System.ComponentModel; using System.Security; using System.Security.Permissions; ////// [SwitchLevel(typeof(TraceLevel))] public class TraceSwitch : Switch { ///Provides a multi-level switch to enable or disable tracing /// and debug output for a compiled application or framework. ////// public TraceSwitch(string displayName, string description) : base(displayName, description) { } public TraceSwitch(string displayName, string description, string defaultSwitchValue) : base(displayName, description, defaultSwitchValue) { } ///Initializes a new instance of the ///class. /// public TraceLevel Level { get { return (TraceLevel)SwitchSetting; } [SecurityPermission(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.UnmanagedCode)] set { if (value < TraceLevel.Off || value > TraceLevel.Verbose) throw new ArgumentException(SR.GetString(SR.TraceSwitchInvalidLevel)); SwitchSetting = (int)value; } } ///Gets or sets the trace /// level that specifies what messages to output for tracing and debugging. ////// public bool TraceError { get { return (Level >= TraceLevel.Error); } } ///Gets a value /// indicating whether the ///is set to /// , , , or /// . /// public bool TraceWarning { get { return (Level >= TraceLevel.Warning); } } ///Gets a value /// indicating whether the ///is set to /// , , or . /// public bool TraceInfo { get { return (Level >= TraceLevel.Info); } } ///Gets a value /// indicating whether the ///is set to /// or . /// public bool TraceVerbose { get { return (Level == TraceLevel.Verbose); } } ///Gets a value /// indicating whether the ///is set to /// . /// protected override void OnSwitchSettingChanged() { int level = SwitchSetting; if (level < (int)TraceLevel.Off) { Trace.WriteLine(SR.GetString(SR.TraceSwitchLevelTooLow, DisplayName)); SwitchSetting = (int)TraceLevel.Off; } else if (level > (int)TraceLevel.Verbose) { Trace.WriteLine(SR.GetString(SR.TraceSwitchLevelTooHigh, DisplayName)); SwitchSetting = (int)TraceLevel.Verbose; } } protected override void OnValueChanged() { SwitchSetting = (int) Enum.Parse(typeof(TraceLevel), Value, true); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007./// Update the level for this switch. /// ///
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- QuestionEventArgs.cs
- SqlRecordBuffer.cs
- Msmq4PoisonHandler.cs
- TextPenaltyModule.cs
- MILUtilities.cs
- DashStyles.cs
- WinFormsSpinner.cs
- ColumnClickEvent.cs
- ValidatedControlConverter.cs
- TypedRowHandler.cs
- ObjectStateFormatter.cs
- UnsafeNativeMethods.cs
- Pen.cs
- RectangleGeometry.cs
- AxHost.cs
- ExtensionDataReader.cs
- ClientConvert.cs
- HorizontalAlignConverter.cs
- XmlHierarchyData.cs
- RtfFormatStack.cs
- AssemblyBuilderData.cs
- DispatcherEventArgs.cs
- SamlSerializer.cs
- FontResourceCache.cs
- ListChangedEventArgs.cs
- ValidationRule.cs
- DataGridBoolColumn.cs
- Odbc32.cs
- ParagraphVisual.cs
- EditingScope.cs
- DocumentViewerHelper.cs
- DataRowExtensions.cs
- ObjectViewListener.cs
- SoapTransportImporter.cs
- X509Utils.cs
- hwndwrapper.cs
- NamedPipeHostedTransportConfiguration.cs
- FeedUtils.cs
- UInt16Storage.cs
- CheckBoxPopupAdapter.cs
- SqlComparer.cs
- HttpResponseInternalBase.cs
- MappedMetaModel.cs
- ContentValidator.cs
- BindingBase.cs
- HtmlInputReset.cs
- WebFormsRootDesigner.cs
- SchemaNamespaceManager.cs
- TableItemPatternIdentifiers.cs
- MailDefinitionBodyFileNameEditor.cs
- QuarticEase.cs
- SymbolEqualComparer.cs
- ObjectContext.cs
- VirtualizingStackPanel.cs
- XamlSerializer.cs
- TimeSpanConverter.cs
- IDQuery.cs
- DispatchChannelSink.cs
- TemplateBindingExtensionConverter.cs
- ProfileEventArgs.cs
- DetailsViewInsertEventArgs.cs
- FusionWrap.cs
- ConditionChanges.cs
- PasswordDeriveBytes.cs
- AccessedThroughPropertyAttribute.cs
- QilInvokeEarlyBound.cs
- WindowPattern.cs
- DataServiceQueryOfT.cs
- IndividualDeviceConfig.cs
- RuleSetCollection.cs
- WebPartConnectionsConfigureVerb.cs
- FunctionDetailsReader.cs
- SchemaCollectionPreprocessor.cs
- Object.cs
- ListBoxDesigner.cs
- Gdiplus.cs
- SevenBitStream.cs
- HtmlUtf8RawTextWriter.cs
- ToolStripArrowRenderEventArgs.cs
- DesignSurfaceCollection.cs
- NodeFunctions.cs
- EpmTargetPathSegment.cs
- DebugView.cs
- DbProviderFactory.cs
- XmlBaseWriter.cs
- WindowVisualStateTracker.cs
- XmlSchemaProviderAttribute.cs
- RemotingConfigParser.cs
- Binding.cs
- RootBrowserWindowProxy.cs
- LocalizedNameDescriptionPair.cs
- ZipPackage.cs
- KeyManager.cs
- CachedFontFamily.cs
- MethodExpression.cs
- HideDisabledControlAdapter.cs
- BasicKeyConstraint.cs
- DateTimeConverter2.cs
- BrushMappingModeValidation.cs
- WebPartZone.cs