Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / CompMod / System / Diagnostics / TraceSwitch.cs / 1305376 / 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
- Evaluator.cs
- SamlAuthorizationDecisionClaimResource.cs
- LogExtentCollection.cs
- HostingEnvironmentWrapper.cs
- DecimalAnimationBase.cs
- TypeToken.cs
- DataGridCellEditEndingEventArgs.cs
- Container.cs
- Msec.cs
- StateRuntime.cs
- CheckBoxField.cs
- ProgressBarRenderer.cs
- DataGridViewCell.cs
- _DisconnectOverlappedAsyncResult.cs
- TimerEventSubscriptionCollection.cs
- SystemWebCachingSectionGroup.cs
- SQLDateTime.cs
- StickyNoteContentControl.cs
- DbMetaDataColumnNames.cs
- RectAnimationClockResource.cs
- validationstate.cs
- ParallelTimeline.cs
- RawStylusInput.cs
- DesignerUtils.cs
- StrokeNodeOperations2.cs
- MediaContext.cs
- DirectoryObjectSecurity.cs
- FixedSOMGroup.cs
- XmlSiteMapProvider.cs
- TabRenderer.cs
- OdbcCommand.cs
- WindowsFormsSectionHandler.cs
- RectangleF.cs
- MimeMultiPart.cs
- ButtonAutomationPeer.cs
- AssemblyAttributesGoHere.cs
- GroupItemAutomationPeer.cs
- TreeNodeConverter.cs
- EntityModelBuildProvider.cs
- ProgressBar.cs
- AnimatedTypeHelpers.cs
- ProcessHostConfigUtils.cs
- NavigateEvent.cs
- ErrorProvider.cs
- WebServiceErrorEvent.cs
- EdmToObjectNamespaceMap.cs
- NullableLongAverageAggregationOperator.cs
- SettingsPropertyIsReadOnlyException.cs
- HttpPostProtocolReflector.cs
- CaretElement.cs
- BuildManagerHost.cs
- LocalClientSecuritySettings.cs
- RenderingBiasValidation.cs
- XsltException.cs
- WebDisplayNameAttribute.cs
- ActivityTrace.cs
- PackWebRequestFactory.cs
- Claim.cs
- DecimalConstantAttribute.cs
- DataListItemEventArgs.cs
- WebPartCloseVerb.cs
- Panel.cs
- DataGrid.cs
- SqlConnectionHelper.cs
- SortExpressionBuilder.cs
- CheckPair.cs
- CodeSnippetStatement.cs
- ResourceManager.cs
- CheckBoxList.cs
- DataControlField.cs
- MetadataFile.cs
- TableLayoutColumnStyleCollection.cs
- Buffer.cs
- PartialCachingControl.cs
- StringReader.cs
- DataControlFieldCollection.cs
- WindowsListViewItemCheckBox.cs
- infer.cs
- LicFileLicenseProvider.cs
- RuleSettings.cs
- ZipIOCentralDirectoryDigitalSignature.cs
- HttpApplicationStateWrapper.cs
- PropertyChangedEventManager.cs
- DataSourceControlBuilder.cs
- SimplePropertyEntry.cs
- CollectionChangeEventArgs.cs
- BaseParser.cs
- SubstitutionDesigner.cs
- _LazyAsyncResult.cs
- RoleService.cs
- DataPagerFieldItem.cs
- PerformanceCounter.cs
- HostedImpersonationContext.cs
- QueryConverter.cs
- IDQuery.cs
- TextDpi.cs
- ClientCultureInfo.cs
- LocalizableAttribute.cs
- FloaterBaseParaClient.cs
- PieceNameHelper.cs