Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / TransactionBridge / Microsoft / Transactions / Wsat / Recovery / LogEntryHeaderv1Deserializer.cs / 1 / LogEntryHeaderv1Deserializer.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- // This file contains the class that represents a deserialized log entry using System; using System.Diagnostics; using System.IO; using Microsoft.Transactions.Bridge; using Microsoft.Transactions.Wsat.InputOutput; using Microsoft.Transactions.Wsat.Messaging; namespace Microsoft.Transactions.Wsat.Recovery { class LogEntryHeaderv1Deserializer : LogEntryHeaderDeserializer { Guid localTransactionId; public LogEntryHeaderv1Deserializer(MemoryStream mem, Guid localTransactionId) : base(mem) { this.localTransactionId = localTransactionId; } public override LogEntry DeserializeHeader() { // Flags LogEntryHeaderv1Flags flags = (LogEntryHeaderv1Flags) SerializationUtils.ReadByte(this.mem); if (DebugTrace.Verbose) { DebugTrace.Trace(TraceLevel.Verbose, "DeserializeHeader flags: {0}", flags); } CheckFlags(flags); // Remote transaction id string remoteTransactionId; if ((flags & LogEntryHeaderv1Flags.StandardRemoteTransactionId) == 0) { remoteTransactionId = SerializationUtils.ReadString(mem); } else { remoteTransactionId = CoordinationContext.CreateNativeIdentifier(this.localTransactionId); } // Local enlistmentId Guid localEnlistmentId = SerializationUtils.ReadGuid(this.mem); return new LogEntry(remoteTransactionId, this.localTransactionId, localEnlistmentId); } void CheckFlags(LogEntryHeaderv1Flags flags) { const LogEntryHeaderv1Flags allFlags = LogEntryHeaderv1Flags.StandardRemoteTransactionId; if ((flags | allFlags) != allFlags) { // Enum validation-- only one value is accepted. If a different value is // used, we can't trust the data and the safest thing to do is crash. DiagnosticUtility.FailFast("Invalid LogEntryHeaderv1Flags"); } } } } // 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
- HtmlTableRowCollection.cs
- ToolTip.cs
- AsyncResult.cs
- SqlWebEventProvider.cs
- URLString.cs
- XmlImplementation.cs
- BooleanExpr.cs
- TrackPointCollection.cs
- AlignmentYValidation.cs
- PropertyEmitterBase.cs
- DependencyPropertyChangedEventArgs.cs
- BufferedWebEventProvider.cs
- ImageButton.cs
- CollectionView.cs
- DiscoveryDocumentLinksPattern.cs
- SuppressMessageAttribute.cs
- RepeatInfo.cs
- XPathAxisIterator.cs
- EmptyTextWriter.cs
- FocusChangedEventArgs.cs
- MultitargetingHelpers.cs
- IfAction.cs
- __TransparentProxy.cs
- ParameterCollection.cs
- IArgumentProvider.cs
- PriorityQueue.cs
- UIElement3D.cs
- BaseTemplateParser.cs
- FormViewAutoFormat.cs
- EntityDataSourceWrapper.cs
- EntryWrittenEventArgs.cs
- PathTooLongException.cs
- FixedSOMFixedBlock.cs
- ComboBoxItem.cs
- Grant.cs
- VariantWrapper.cs
- SqlConnectionString.cs
- DirectoryRootQuery.cs
- RtfNavigator.cs
- ToolBarButtonClickEvent.cs
- Vector3DIndependentAnimationStorage.cs
- LinqExpressionNormalizer.cs
- CrossContextChannel.cs
- SortAction.cs
- ExtendedProperty.cs
- ResourceAssociationType.cs
- StateMachine.cs
- DataSourceControlBuilder.cs
- JsonQNameDataContract.cs
- QilUnary.cs
- XmlSchemaObjectCollection.cs
- TypeLoadException.cs
- AlternateViewCollection.cs
- AxDesigner.cs
- LinkedResourceCollection.cs
- StubHelpers.cs
- NamedObject.cs
- ApplicationDirectory.cs
- CodeThrowExceptionStatement.cs
- WebEvents.cs
- CodeSnippetExpression.cs
- TraceRecords.cs
- EntityModelBuildProvider.cs
- HtmlEncodedRawTextWriter.cs
- XmlSchemaDocumentation.cs
- XsltFunctions.cs
- EditingCommands.cs
- SingleConverter.cs
- ListBindingConverter.cs
- SolidColorBrush.cs
- SerialPinChanges.cs
- PeerInvitationResponse.cs
- DateTimeOffsetStorage.cs
- XmlImplementation.cs
- TextAnchor.cs
- TextServicesPropertyRanges.cs
- unsafenativemethodstextservices.cs
- InputLanguageManager.cs
- CompilerGlobalScopeAttribute.cs
- VisualStyleTypesAndProperties.cs
- PointLight.cs
- StylusDownEventArgs.cs
- QilStrConcat.cs
- CodeIdentifiers.cs
- BufferedGraphicsContext.cs
- CodeConstructor.cs
- UInt64Converter.cs
- x509utils.cs
- PreloadHost.cs
- DeclarationUpdate.cs
- SoapHttpTransportImporter.cs
- DebugManager.cs
- WebControl.cs
- TypeConverterAttribute.cs
- WorkflowDefinitionContext.cs
- StylusTouchDevice.cs
- WebPartConnectionsCancelEventArgs.cs
- CfgRule.cs
- PropertyMetadata.cs
- TagPrefixInfo.cs