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
- OutputWindow.cs
- LinqDataSourceUpdateEventArgs.cs
- SignatureHelper.cs
- CapabilitiesSection.cs
- PenThreadPool.cs
- ExpressionVisitorHelpers.cs
- DeflateStream.cs
- ToolStripContainer.cs
- FileSystemEventArgs.cs
- EmbeddedMailObjectCollectionEditor.cs
- CurrencyWrapper.cs
- IPAddress.cs
- DataObjectMethodAttribute.cs
- MD5CryptoServiceProvider.cs
- MethodSet.cs
- SQLChars.cs
- NegotiateStream.cs
- ValidationSummary.cs
- CompressEmulationStream.cs
- ObjectDataSourceMethodEventArgs.cs
- HScrollProperties.cs
- XsltQilFactory.cs
- GenericsInstances.cs
- IndexedGlyphRun.cs
- SqlAliasesReferenced.cs
- MgmtConfigurationRecord.cs
- HuffmanTree.cs
- AdapterSwitches.cs
- BrowsableAttribute.cs
- JapaneseLunisolarCalendar.cs
- StrokeNodeOperations.cs
- BaseTreeIterator.cs
- MimeFormImporter.cs
- MenuItem.cs
- ByteAnimationBase.cs
- Application.cs
- StoryFragments.cs
- GridEntryCollection.cs
- HttpVersion.cs
- PenCursorManager.cs
- DBCSCodePageEncoding.cs
- CodeDirectionExpression.cs
- WizardPanelChangingEventArgs.cs
- WebPartEditorApplyVerb.cs
- UncommonField.cs
- InfoCardTrace.cs
- LinkedList.cs
- GenericEnumerator.cs
- StdValidatorsAndConverters.cs
- FrameworkElementAutomationPeer.cs
- NamespaceCollection.cs
- PersonalizationStateInfoCollection.cs
- HttpCapabilitiesBase.cs
- HtmlSelect.cs
- XDRSchema.cs
- ViewgenContext.cs
- itemelement.cs
- CustomAttributeBuilder.cs
- TextTreeInsertElementUndoUnit.cs
- ResourcePermissionBaseEntry.cs
- LocalizableResourceBuilder.cs
- NativeMethods.cs
- Italic.cs
- TextUtf8RawTextWriter.cs
- QilValidationVisitor.cs
- XmlSchemaInfo.cs
- KeysConverter.cs
- ByeMessageApril2005.cs
- Table.cs
- HtmlTitle.cs
- IntSecurity.cs
- WebPartUtil.cs
- FrameworkReadOnlyPropertyMetadata.cs
- SortDescriptionCollection.cs
- ExpressionVisitor.cs
- XPathMessageContext.cs
- Rotation3DAnimation.cs
- ServiceCredentialsElement.cs
- XXXInfos.cs
- SqlProviderManifest.cs
- TypeConstant.cs
- CodeArrayIndexerExpression.cs
- NativeBuffer.cs
- Rectangle.cs
- BufferedGraphics.cs
- HttpModule.cs
- DbMetaDataColumnNames.cs
- AlphabetConverter.cs
- RawTextInputReport.cs
- RecognizedAudio.cs
- DiagnosticTraceSource.cs
- RunInstallerAttribute.cs
- FixedDSBuilder.cs
- DesignerForm.cs
- PublisherIdentityPermission.cs
- BlobPersonalizationState.cs
- ExecutionContext.cs
- ReadOnlyCollection.cs
- AlignmentXValidation.cs
- AttachedPropertyBrowsableForChildrenAttribute.cs