Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / TransactionBridge / Microsoft / Transactions / Bridge / Enlistment.cs / 1 / Enlistment.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- using System; namespace Microsoft.Transactions.Bridge { [Flags] enum Notifications { Phase0 = 0x000001, // Enlistment wants/will do phase-0 notifications TwoPhaseCommit = 0x000002, // Enlistment wants/will do two phase commit notifications Outcome = 0x000004, // Enlistment wants/will do outcome notifications AllProtocols = (Notifications.Phase0 | Notifications.TwoPhaseCommit | Notifications.Outcome), InDoubt = 0x000008, // Enlistment can handle in-doubt status reports Volatile = 0x000010, // Enlistment should not be recovered All = (Notifications.AllProtocols | Notifications.InDoubt | Notifications.Volatile) } ////// The Enlistment type defines the enlistment, which is the mapping of /// the transaction from provider to PPL to TM. /// sealed class Enlistment { public Enlistment( ) { this.localTransactionId = Guid.Empty; this.enlistmentId = Guid.NewGuid( ); this.remoteTransactionId = null; this.recoveryData = new byte[0]; this.transactionManagerContext = null; this.protocolProviderContext = null; this.notificationMask = Notifications.AllProtocols; } public Enlistment( Guid enlistmentId ) { this.localTransactionId = Guid.Empty; this.enlistmentId = enlistmentId; this.remoteTransactionId = null; this.recoveryData = new byte[0]; this.transactionManagerContext = null; this.protocolProviderContext = null; this.notificationMask = Notifications.AllProtocols; } public Guid EnlistmentId { get{ return enlistmentId; } } public Guid LocalTransactionId { get{ return localTransactionId; } set{ localTransactionId = value; } } public string RemoteTransactionId { get{ return remoteTransactionId; } set{ remoteTransactionId = value; } } public object TransactionManagerContext { get{ return transactionManagerContext; } set{ transactionManagerContext = value; } } public object ProtocolProviderContext { get{ return protocolProviderContext; } set{ protocolProviderContext = value; } } public byte[] GetRecoveryData() { return (byte[])recoveryData.Clone(); } public void SetRecoveryData(byte[] data) { if (data != null) recoveryData = (byte[])data.Clone(); else recoveryData = new byte[0]; } public Notifications NotificationMask { get { return notificationMask; } set { notificationMask = value; } } override public string ToString( ) { return this.GetType( ).ToString( ) + " enlistment ID = " + enlistmentId.ToString( "B", null ) + " transaction ID = " + localTransactionId.ToString( "B", null ); } public EnlistmentOptions EnlistmentOptions { get{ return this.enlistmentOptions; } set{ this.enlistmentOptions = value; } } // // // private Guid localTransactionId; private Guid enlistmentId; private string remoteTransactionId; private byte[] recoveryData; private Notifications notificationMask; private EnlistmentOptions enlistmentOptions; private object transactionManagerContext; private object protocolProviderContext; } } // 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
- ResourceDescriptionAttribute.cs
- WebConfigurationHostFileChange.cs
- StorageComplexTypeMapping.cs
- DataGridViewToolTip.cs
- FtpWebResponse.cs
- UMPAttributes.cs
- HttpModuleCollection.cs
- SafeTimerHandle.cs
- BrowserDefinitionCollection.cs
- ClientApiGenerator.cs
- PageBorderless.cs
- Form.cs
- OneOfScalarConst.cs
- Group.cs
- RootBuilder.cs
- ProcessThread.cs
- Types.cs
- MeshGeometry3D.cs
- MsmqMessageSerializationFormat.cs
- CommandBinding.cs
- GeneralTransformCollection.cs
- HtmlShimManager.cs
- versioninfo.cs
- ColumnMapProcessor.cs
- DataListItem.cs
- FontFamily.cs
- PropertyGridEditorPart.cs
- DoubleKeyFrameCollection.cs
- ValueCollectionParameterReader.cs
- BitmapCodecInfo.cs
- DataViewManager.cs
- CommonProperties.cs
- RelativeSource.cs
- SharedDp.cs
- XmlSchemaImport.cs
- DataObject.cs
- HttpFileCollectionBase.cs
- ExpressionPrefixAttribute.cs
- SpecularMaterial.cs
- ServiceDescriptionContext.cs
- VerificationException.cs
- DefaultDiscoveryServiceExtension.cs
- WindowsPen.cs
- ParagraphResult.cs
- _ListenerRequestStream.cs
- PropertyValueChangedEvent.cs
- SplitterCancelEvent.cs
- TypeInformation.cs
- ServicePointManager.cs
- AssemblyAssociatedContentFileAttribute.cs
- InternalPolicyElement.cs
- RectangleGeometry.cs
- EdmPropertyAttribute.cs
- LogExtent.cs
- ValidatorCompatibilityHelper.cs
- PnrpPeerResolverBindingElement.cs
- MDIControlStrip.cs
- TreeNodeEventArgs.cs
- SafeRegistryHandle.cs
- RankException.cs
- Deserializer.cs
- Model3DGroup.cs
- TreeNodeCollection.cs
- FloaterBaseParagraph.cs
- ColorMatrix.cs
- TypefaceMetricsCache.cs
- ConfigXmlElement.cs
- AsymmetricSecurityBindingElement.cs
- Image.cs
- Scanner.cs
- Selection.cs
- QuadraticBezierSegment.cs
- OleDbEnumerator.cs
- LoginUtil.cs
- BoundsDrawingContextWalker.cs
- HashJoinQueryOperatorEnumerator.cs
- ToolboxItemFilterAttribute.cs
- RemoteDebugger.cs
- DeviceContext.cs
- XmlTextReaderImpl.cs
- QueryCacheKey.cs
- StreamInfo.cs
- SByte.cs
- DataServiceRequestOfT.cs
- Int64AnimationBase.cs
- ConfigurationStrings.cs
- MenuEventArgs.cs
- OutputCacheModule.cs
- EdgeModeValidation.cs
- NetworkInformationPermission.cs
- ListBindingHelper.cs
- NamespaceCollection.cs
- mda.cs
- BitStack.cs
- Pointer.cs
- BaseAutoFormat.cs
- NotSupportedException.cs
- RuleElement.cs
- BufferedStream.cs
- AsyncOperation.cs