Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / tx / System / Transactions / Trace / Activity.cs / 1305376 / Activity.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Transactions.Diagnostics
{
using System;
internal class Activity : IDisposable
{
Guid oldGuid;
Guid newGuid;
bool emitTransfer = false;
bool mustDispose = false;
Activity(ref Guid newGuid, bool emitTransfer)
{
this.emitTransfer = emitTransfer;
if (DiagnosticTrace.ShouldCorrelate && newGuid != Guid.Empty)
{
this.newGuid = newGuid;
this.oldGuid = DiagnosticTrace.GetActivityId();
if (oldGuid != newGuid)
{
this.mustDispose = true;
if (this.emitTransfer)
{
DiagnosticTrace.TraceTransfer(newGuid);
}
DiagnosticTrace.SetActivityId(newGuid);
}
}
}
internal static Activity CreateActivity(Guid newGuid, bool emitTransfer)
{
Activity retval = null;
if (DiagnosticTrace.ShouldCorrelate &&
(newGuid != Guid.Empty) &&
(newGuid != DiagnosticTrace.GetActivityId()))
{
retval = new Activity(ref newGuid, emitTransfer);
}
return retval;
}
public void Dispose()
{
if (this.mustDispose)
{
this.mustDispose = false;
if (this.emitTransfer)
{
DiagnosticTrace.TraceTransfer(oldGuid);
}
DiagnosticTrace.SetActivityId(oldGuid);
}
}
}
}
// 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
- XmlSchemaComplexContentExtension.cs
- TextChange.cs
- ProfileBuildProvider.cs
- AlignmentXValidation.cs
- VisualState.cs
- RetrieveVirtualItemEventArgs.cs
- BaseValidator.cs
- Type.cs
- DoubleKeyFrameCollection.cs
- UrlMappingCollection.cs
- SpotLight.cs
- DecimalAnimationUsingKeyFrames.cs
- SecUtil.cs
- KeyGestureConverter.cs
- IndexerNameAttribute.cs
- DifferencingCollection.cs
- EventLogInformation.cs
- FormView.cs
- ConvertersCollection.cs
- Tile.cs
- FacetValues.cs
- ProcessModule.cs
- TogglePatternIdentifiers.cs
- CountdownEvent.cs
- ControlCachePolicy.cs
- MimeParameterWriter.cs
- Point4DValueSerializer.cs
- UnmanagedMarshal.cs
- OverrideMode.cs
- BamlLocalizerErrorNotifyEventArgs.cs
- CodeAttributeDeclaration.cs
- SharedStatics.cs
- ProvidePropertyAttribute.cs
- BinaryConverter.cs
- StatusBarDrawItemEvent.cs
- MutexSecurity.cs
- PropertyMapper.cs
- OverlappedAsyncResult.cs
- ClassValidator.cs
- Hash.cs
- OleStrCAMarshaler.cs
- ArraySortHelper.cs
- BStrWrapper.cs
- HttpCacheVaryByContentEncodings.cs
- ToolboxBitmapAttribute.cs
- TextClipboardData.cs
- RenderContext.cs
- XmlIterators.cs
- GenericsInstances.cs
- ToolStripActionList.cs
- DataGridCellClipboardEventArgs.cs
- FragmentQueryKB.cs
- RayHitTestParameters.cs
- InfoCardAsymmetricCrypto.cs
- EnterpriseServicesHelper.cs
- PenLineCapValidation.cs
- DateTimeFormatInfo.cs
- HighContrastHelper.cs
- DragCompletedEventArgs.cs
- BufferedStream2.cs
- ToolStripPanelRow.cs
- XPathNavigator.cs
- ProtocolsConfiguration.cs
- WinFormsSecurity.cs
- StrokeCollectionDefaultValueFactory.cs
- TextEndOfLine.cs
- AssemblyInfo.cs
- BinaryMethodMessage.cs
- GACMembershipCondition.cs
- DataGridViewDataErrorEventArgs.cs
- TransactionFlowOption.cs
- AutoFocusStyle.xaml.cs
- NameValueCollection.cs
- BindingList.cs
- codemethodreferenceexpression.cs
- UserNameSecurityToken.cs
- ScrollBarAutomationPeer.cs
- FormViewInsertedEventArgs.cs
- ReflectionTypeLoadException.cs
- EventHandlersStore.cs
- Rfc2898DeriveBytes.cs
- CodeSnippetTypeMember.cs
- SafeFindHandle.cs
- DesignerForm.cs
- UIAgentRequest.cs
- diagnosticsswitches.cs
- SmiConnection.cs
- FixedTextSelectionProcessor.cs
- ImageCodecInfo.cs
- PersistencePipeline.cs
- HttpDebugHandler.cs
- DesignBindingEditor.cs
- PropertyPath.cs
- DynamicDataManager.cs
- UndirectedGraph.cs
- RuleSettingsCollection.cs
- PathGeometry.cs
- BigIntegerStorage.cs
- AutoResizedEvent.cs
- XhtmlConformanceSection.cs