Imported Upstream version 4.0.1

Former-commit-id: 757121caeaad523350be5330f0a3ecc891c70fb8
This commit is contained in:
Jo Shields
2015-04-26 19:10:23 +01:00
parent 7fce50ac98
commit c54b0bda4e
252 changed files with 16715 additions and 1176 deletions

View File

@@ -0,0 +1,55 @@
//-----------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------------
namespace System.ServiceModel.Diagnostics
{
using System.Diagnostics;
class DiagnosticTraceSource : PiiTraceSource
{
const string PropagateActivityValue = "propagateActivity";
internal DiagnosticTraceSource(string name, string eventSourceName)
: base(name, eventSourceName)
{
}
internal DiagnosticTraceSource(string name, string eventSourceName, SourceLevels level)
: base(name, eventSourceName, level)
{
}
protected override string[] GetSupportedAttributes()
{
string[] baseAttributes = base.GetSupportedAttributes();
string[] supportedAttributes = new string[baseAttributes.Length + 1];
for (int i = 0; i < baseAttributes.Length; i++)
{
supportedAttributes[i] = baseAttributes[i];
}
supportedAttributes[baseAttributes.Length] = DiagnosticTraceSource.PropagateActivityValue;
return supportedAttributes;
}
internal bool PropagateActivity
{
get
{
bool retval = false;
string attributeValue = this.Attributes[DiagnosticTraceSource.PropagateActivityValue];
if (!string.IsNullOrEmpty(attributeValue))
{
if (!bool.TryParse(attributeValue, out retval))
{
retval = false;
}
}
return retval;
}
set
{
this.Attributes[DiagnosticTraceSource.PropagateActivityValue] = value.ToString();
}
}
}
}