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
- TextSelectionHelper.cs
- HttpInputStream.cs
- XmlNodeReader.cs
- ReliabilityContractAttribute.cs
- XPathDocumentNavigator.cs
- TrustManager.cs
- TriState.cs
- PageFunction.cs
- RelatedImageListAttribute.cs
- MenuEventArgs.cs
- CompModSwitches.cs
- Token.cs
- EmptyEnumerable.cs
- DataRowChangeEvent.cs
- DragEventArgs.cs
- LogReserveAndAppendState.cs
- XamlToRtfWriter.cs
- QueryStringHandler.cs
- ArglessEventHandlerProxy.cs
- CodeDelegateCreateExpression.cs
- ActivityBuilderXamlWriter.cs
- ResourceCategoryAttribute.cs
- TypeForwardedToAttribute.cs
- ByteStream.cs
- Inline.cs
- SoapAttributes.cs
- TransformerInfo.cs
- DrawingContextWalker.cs
- XappLauncher.cs
- MissingSatelliteAssemblyException.cs
- basecomparevalidator.cs
- RangeValuePattern.cs
- XamlBrushSerializer.cs
- _ProxyRegBlob.cs
- ErrorProvider.cs
- TableLayoutRowStyleCollection.cs
- DataServiceQueryContinuation.cs
- ArrayList.cs
- ImageMapEventArgs.cs
- CompleteWizardStep.cs
- XmlValueConverter.cs
- LineServicesRun.cs
- TextTreeTextElementNode.cs
- PropertyGridCommands.cs
- InputProviderSite.cs
- FixedPageProcessor.cs
- JournalNavigationScope.cs
- EncryptedXml.cs
- DefaultTextStore.cs
- QuaternionAnimationBase.cs
- Aes.cs
- DeferredTextReference.cs
- CodeAttributeDeclarationCollection.cs
- TypeHelpers.cs
- DictionaryChange.cs
- ObjectKeyFrameCollection.cs
- SelectingProviderEventArgs.cs
- DependencyProperty.cs
- SchemaMerger.cs
- ViewSimplifier.cs
- FilteredSchemaElementLookUpTable.cs
- TypeDescriptorFilterService.cs
- ReachVisualSerializer.cs
- RequestCachePolicyConverter.cs
- SkinBuilder.cs
- MenuItemCollection.cs
- RadioButtonBaseAdapter.cs
- TabItem.cs
- querybuilder.cs
- EllipticalNodeOperations.cs
- SafeArrayTypeMismatchException.cs
- ProxyWebPartConnectionCollection.cs
- AsyncSerializedWorker.cs
- WindowsRichEditRange.cs
- ConsoleKeyInfo.cs
- RuntimeConfig.cs
- SqlNodeAnnotation.cs
- CallbackValidator.cs
- DBSchemaRow.cs
- XPathDocument.cs
- RemoteWebConfigurationHost.cs
- UnorderedHashRepartitionStream.cs
- ISFClipboardData.cs
- EncodingStreamWrapper.cs
- DataRecordInfo.cs
- ContractListAdapter.cs
- ComponentEvent.cs
- SqlDataSourceParameterParser.cs
- securitycriticaldataformultiplegetandset.cs
- ProfilePropertySettingsCollection.cs
- CrossSiteScriptingValidation.cs
- EdmFunction.cs
- DispatcherEventArgs.cs
- LineBreak.cs
- DocumentViewerBase.cs
- Scripts.cs
- EnvironmentPermission.cs
- ISFTagAndGuidCache.cs
- ScrollEvent.cs
- DataSourceComponent.cs