Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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
- RIPEMD160.cs
- FontFaceLayoutInfo.cs
- ColumnWidthChangingEvent.cs
- ViewKeyConstraint.cs
- QueryCoreOp.cs
- SchemaImporterExtensionElement.cs
- TTSVoice.cs
- FlowDocumentPaginator.cs
- dataprotectionpermission.cs
- WaitingCursor.cs
- MemberProjectedSlot.cs
- ECDsaCng.cs
- CommandExpr.cs
- DataGrid.cs
- StringArrayConverter.cs
- DataRowExtensions.cs
- LongMinMaxAggregationOperator.cs
- TypeUtils.cs
- SingleObjectCollection.cs
- TitleStyle.cs
- FixUpCollection.cs
- ColorMatrix.cs
- ModelProperty.cs
- DispatchWrapper.cs
- Thickness.cs
- OpenTypeCommon.cs
- ParserHooks.cs
- ControlCachePolicy.cs
- UdpDiscoveryEndpointProvider.cs
- HandlerBase.cs
- GenericsInstances.cs
- PowerModeChangedEventArgs.cs
- CodeSnippetStatement.cs
- BookmarkEventArgs.cs
- CommonXSendMessage.cs
- GenerateTemporaryTargetAssembly.cs
- streamingZipPartStream.cs
- Hash.cs
- XPathDocument.cs
- NetCodeGroup.cs
- TypeSystem.cs
- _ProxyRegBlob.cs
- DataSvcMapFile.cs
- PermissionSet.cs
- Version.cs
- ReadOnlyDictionary.cs
- PlainXmlSerializer.cs
- CodeDirectionExpression.cs
- Quad.cs
- EnvelopedPkcs7.cs
- PageTheme.cs
- Pens.cs
- SolidColorBrush.cs
- LinkArea.cs
- WindowsHyperlink.cs
- Condition.cs
- PropertySet.cs
- XhtmlBasicListAdapter.cs
- XmlQueryStaticData.cs
- XmlMembersMapping.cs
- BookmarkWorkItem.cs
- HttpHostedTransportConfiguration.cs
- SqlParameter.cs
- BitmapMetadata.cs
- ClientRolePrincipal.cs
- NavigatorInvalidBodyAccessException.cs
- EmptyQuery.cs
- DefaultSettingsSection.cs
- coordinatorscratchpad.cs
- GifBitmapDecoder.cs
- HtmlControlPersistable.cs
- GradientSpreadMethodValidation.cs
- X509CertificateInitiatorClientCredential.cs
- DataGridViewAutoSizeModeEventArgs.cs
- FontInfo.cs
- ListBox.cs
- ContextMarshalException.cs
- ContainerParagraph.cs
- XhtmlTextWriter.cs
- TextBox.cs
- CTreeGenerator.cs
- TabControl.cs
- LicenseException.cs
- ExternalFile.cs
- ControlDesignerState.cs
- ViewStateModeByIdAttribute.cs
- SqlTriggerContext.cs
- TaskFormBase.cs
- TableStyle.cs
- DelegatingMessage.cs
- ToolboxDataAttribute.cs
- Transform3D.cs
- RuleRef.cs
- PersonalizationProviderHelper.cs
- ComboBox.cs
- WebPartHelpVerb.cs
- FamilyCollection.cs
- XmlSchemaSimpleTypeRestriction.cs
- Pair.cs
- DeclaredTypeValidatorAttribute.cs