Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / tx / System / Transactions / EnlistmentTraceIdentifier.cs / 1305376 / EnlistmentTraceIdentifier.cs
using System; namespace System.Transactions { ////// This identifier is used in tracing to distiguish transaction /// enlistments. This identifier is only unique within /// a given AppDomain. /// internal struct EnlistmentTraceIdentifier { public static readonly EnlistmentTraceIdentifier Empty = new EnlistmentTraceIdentifier(); public EnlistmentTraceIdentifier( Guid resourceManagerIdentifier, TransactionTraceIdentifier transactionTraceId, int enlistmentIdentifier ) { this.resourceManagerIdentifier = resourceManagerIdentifier; this.transactionTraceIdentifier = transactionTraceId; this.enlistmentIdentifier = enlistmentIdentifier; } private Guid resourceManagerIdentifier; ////// The Guid identifier of the resource manager that made the /// enlistment. If the enlistment is a Volatile enlistment, /// this value will be Guid.Empty. /// public Guid ResourceManagerIdentifier { get { return this.resourceManagerIdentifier; } } private TransactionTraceIdentifier transactionTraceIdentifier; ////// The TransactionTraceIdentifier for the transaction that is /// enlisted upon. /// public TransactionTraceIdentifier TransactionTraceId { get { return this.transactionTraceIdentifier; } } private int enlistmentIdentifier; ////// A value that distiguishes between multiple enlistments on the same /// transaction instance by the same resource manager. /// public int EnlistmentIdentifier { get { return this.enlistmentIdentifier; } } public override int GetHashCode() { return base.GetHashCode(); // Don't have anything better to do. } public override bool Equals ( object objectToCompare ) { if ( ! ( objectToCompare is EnlistmentTraceIdentifier ) ) { return false; } EnlistmentTraceIdentifier id = ( EnlistmentTraceIdentifier )objectToCompare; if ( (id.ResourceManagerIdentifier != this.ResourceManagerIdentifier ) || ( id.TransactionTraceId != this.TransactionTraceId ) || ( id.EnlistmentIdentifier != this.EnlistmentIdentifier ) ) { return false; } return true; } public static bool operator==( EnlistmentTraceIdentifier id1, EnlistmentTraceIdentifier id2 ) { return id1.Equals( id2 ); } // We need to equality operator and the compiler doesn't let us have an equality operator without an inequality operator, // so we added it and FXCop doesn't like the fact that we don't call it. [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] public static bool operator!=( EnlistmentTraceIdentifier id1, EnlistmentTraceIdentifier id2 ) { return !id1.Equals( id2 ); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- UriExt.cs
- RegexWorker.cs
- AspCompat.cs
- PerformanceCounterNameAttribute.cs
- RecipientInfo.cs
- WebBrowser.cs
- XamlFilter.cs
- Manipulation.cs
- PersonalizationStateInfoCollection.cs
- DataGridViewBand.cs
- CompilationPass2TaskInternal.cs
- WebDescriptionAttribute.cs
- ByteAnimation.cs
- ComponentEditorForm.cs
- ZoneButton.cs
- HtmlObjectListAdapter.cs
- SkewTransform.cs
- InstallerTypeAttribute.cs
- FlowNode.cs
- URL.cs
- GenericXmlSecurityTokenAuthenticator.cs
- OpCodes.cs
- FrameworkElement.cs
- MessageBuffer.cs
- Convert.cs
- SafeProcessHandle.cs
- AutomationAttributeInfo.cs
- BaseTemplateBuildProvider.cs
- TextServicesCompartmentContext.cs
- DeferrableContentConverter.cs
- SQLResource.cs
- RuntimeConfig.cs
- DefinitionUpdate.cs
- ProtocolElement.cs
- DesignerLoader.cs
- safemediahandle.cs
- ArrayHelper.cs
- QueryResponse.cs
- DynamicValidatorEventArgs.cs
- Token.cs
- NetworkInterface.cs
- RegexTree.cs
- CheckBox.cs
- grammarelement.cs
- SessionPageStateSection.cs
- QilNode.cs
- SAPICategories.cs
- BufferedGraphics.cs
- FigureParaClient.cs
- NoneExcludedImageIndexConverter.cs
- UTF32Encoding.cs
- SqlAggregateChecker.cs
- BitmapData.cs
- StaticDataManager.cs
- ConnectionStringEditor.cs
- PropertyTabChangedEvent.cs
- FlowDocumentReaderAutomationPeer.cs
- CustomErrorCollection.cs
- BitmapEffect.cs
- XslNumber.cs
- CharAnimationUsingKeyFrames.cs
- ServiceBuildProvider.cs
- MaterialGroup.cs
- GrammarBuilderRuleRef.cs
- InputScope.cs
- X509Chain.cs
- Function.cs
- TemplateManager.cs
- SurrogateEncoder.cs
- Constants.cs
- SHA384.cs
- FunctionOverloadResolver.cs
- ItemCheckedEvent.cs
- QilXmlReader.cs
- SourceFilter.cs
- AssemblyEvidenceFactory.cs
- ScriptDescriptor.cs
- PermissionListSet.cs
- OSEnvironmentHelper.cs
- RangeContentEnumerator.cs
- IntegerValidator.cs
- MenuItem.cs
- SmiMetaDataProperty.cs
- SystemParameters.cs
- ConvertEvent.cs
- Processor.cs
- SetterTriggerConditionValueConverter.cs
- InlinedAggregationOperator.cs
- AssociatedControlConverter.cs
- TextRangeEditTables.cs
- NonVisualControlAttribute.cs
- Themes.cs
- SecurityUtils.cs
- newitemfactory.cs
- DataFormat.cs
- RequestUriProcessor.cs
- SqlDataSourceQuery.cs
- EdmError.cs
- JoinGraph.cs
- PermissionAttributes.cs