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
- RandomNumberGenerator.cs
- WebFaultClientMessageInspector.cs
- CfgSemanticTag.cs
- serverconfig.cs
- SafeFileMapViewHandle.cs
- EntityKey.cs
- SmiMetaDataProperty.cs
- CombinedGeometry.cs
- GridViewUpdateEventArgs.cs
- ApplicationSettingsBase.cs
- LinearQuaternionKeyFrame.cs
- DesignTable.cs
- WindowsGraphicsCacheManager.cs
- ExpressionBuilder.cs
- ParenExpr.cs
- CapabilitiesPattern.cs
- ClientConfigPaths.cs
- XhtmlTextWriter.cs
- OdbcConnection.cs
- GorillaCodec.cs
- FormViewUpdateEventArgs.cs
- KnownIds.cs
- TraceData.cs
- RuntimeHelpers.cs
- ScriptingAuthenticationServiceSection.cs
- HtmlInputControl.cs
- DelegatingHeader.cs
- ApplicationCommands.cs
- ConnectionPoolManager.cs
- ColorPalette.cs
- PathFigureCollection.cs
- SamlAuthorizationDecisionStatement.cs
- CheckBoxBaseAdapter.cs
- AnnotationStore.cs
- AmbiguousMatchException.cs
- SqlCachedBuffer.cs
- ModelPropertyCollectionImpl.cs
- CalendarSelectionChangedEventArgs.cs
- SQlBooleanStorage.cs
- FileRecordSequence.cs
- CodeTypeDeclaration.cs
- SplineKeyFrames.cs
- Keyboard.cs
- DNS.cs
- HitTestFilterBehavior.cs
- Message.cs
- FrugalList.cs
- SelectionRangeConverter.cs
- RtfToken.cs
- StrongName.cs
- SqlCacheDependencySection.cs
- AccessDataSourceView.cs
- MarkerProperties.cs
- OptionUsage.cs
- KoreanLunisolarCalendar.cs
- CultureInfoConverter.cs
- EdmValidator.cs
- ParseNumbers.cs
- dataprotectionpermissionattribute.cs
- OSFeature.cs
- TypeToken.cs
- Point3D.cs
- TraceContextEventArgs.cs
- GridLengthConverter.cs
- SubpageParaClient.cs
- XmlSchemaAny.cs
- TextRunCache.cs
- StateRuntime.cs
- DataGridCommandEventArgs.cs
- XmlElement.cs
- ColumnBinding.cs
- UnmanagedMarshal.cs
- CultureMapper.cs
- AmbientLight.cs
- EntityTypeBase.cs
- SqlUserDefinedTypeAttribute.cs
- ByeOperationAsyncResult.cs
- UshortList2.cs
- SafeBitVector32.cs
- NativeMethods.cs
- MarshalByValueComponent.cs
- HttpDebugHandler.cs
- PageAsyncTask.cs
- ReflectionPermission.cs
- SHA512Cng.cs
- WebPartZone.cs
- DynamicResourceExtension.cs
- FieldMetadata.cs
- XmlIlGenerator.cs
- CodeStatement.cs
- LinqDataSourceDisposeEventArgs.cs
- FontSourceCollection.cs
- RSACryptoServiceProvider.cs
- XmlSchemaInclude.cs
- TextRangeProviderWrapper.cs
- DrawingImage.cs
- AudioStateChangedEventArgs.cs
- DocumentAutomationPeer.cs
- HwndStylusInputProvider.cs
- XmlObjectSerializerWriteContextComplex.cs