Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / TransactionBridge / Microsoft / Transactions / Wsat / Messaging / XmlStrings.cs / 1 / XmlStrings.cs
//------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------------
// Define any additional strings needed for wire representations of WS-C/AT
using System;
using System.ServiceModel;
using System.ServiceModel.Channels;
using System.Transactions;
using System.Xml;
using Microsoft.Transactions.Wsat.Protocol;
namespace Microsoft.Transactions.Wsat.Messaging
{
static class WSAtomicTransactionStrings
{
//
// Protocol conversion
//
public static ControlProtocol WellKnownNameToProtocol(string name, ProtocolVersion protocolVersion)
{
AtomicTransactionStrings atomicTransactionStrings = AtomicTransactionStrings.Version(protocolVersion);
if(name == atomicTransactionStrings.CompletionUri)
{
return ControlProtocol.Completion;
}
else if(name == atomicTransactionStrings.Durable2PCUri)
{
return ControlProtocol.Durable2PC;
}
else if(name == atomicTransactionStrings.Volatile2PCUri)
{
return ControlProtocol.Volatile2PC;
}
else
{
return ControlProtocol.None;
}
}
public static XmlDictionaryString ProtocolToWellKnownName(ControlProtocol ctrlProt, ProtocolVersion protocolVersion)
{
AtomicTransactionXmlDictionaryStrings atomicTransactionXmlDictionaryStrings =
AtomicTransactionXmlDictionaryStrings.Version(protocolVersion);
switch (ctrlProt)
{
case ControlProtocol.Completion:
return atomicTransactionXmlDictionaryStrings.CompletionUri;
case ControlProtocol.Durable2PC:
return atomicTransactionXmlDictionaryStrings.Durable2PCUri;
case ControlProtocol.Volatile2PC:
return atomicTransactionXmlDictionaryStrings.Volatile2PCUri;
default:
// An invalid Enum value on this internal code path indicates
// a product bug and violates assumptions about
// valid values in MSDTC.
DiagnosticUtility.FailFast("Invalid protocol");
return null; // Keep the compiler happy
}
}
}
static class BindingStrings
{
public const string AddressPrefix = "WsatService";
public const string InteropBindingName = "Interop";
public const string NamedPipeBindingName = "NamedPipe";
public const string WindowsBindingName = "Windows";
static readonly string InteropBindingQName10 =
new XmlQualifiedName(InteropBindingName, AtomicTransactionExternal10Strings.Namespace).ToString();
static readonly string InteropBindingQName11 =
new XmlQualifiedName(InteropBindingName, AtomicTransactionExternal11Strings.Namespace).ToString();
public static string InteropBindingQName(ProtocolVersion protocolVersion)
{
ProtocolVersionHelper.AssertProtocolVersion(protocolVersion, typeof(BindingStrings), "InteropBindingQName"); //assert valid protocol version
switch (protocolVersion)
{
case ProtocolVersion.Version10 :
return InteropBindingQName10;
case ProtocolVersion.Version11 :
return InteropBindingQName11;
default :
return null; // inaccessible path because we have asserted the protocol version
}
}
public static readonly string NamedPipeBindingQName =
new XmlQualifiedName(NamedPipeBindingName, DotNetAtomicTransactionExternalStrings.Namespace).ToString();
public static readonly string WindowsBindingQName =
new XmlQualifiedName(WindowsBindingName, DotNetAtomicTransactionExternalStrings.Namespace).ToString();
public const string RemoteProxySuffix = "Remote/";
public const string DisabledSuffix = "Disabled/";
public static string ActivationCoordinatorSuffix(ProtocolVersion protocolVersion)
{
ProtocolVersionHelper.AssertProtocolVersion(protocolVersion, typeof(BindingStrings), "ActivationCoordinatorSuffix"); //assert valid protocol version
switch (protocolVersion)
{
case ProtocolVersion.Version10:
return "Activation/Coordinator/";
case ProtocolVersion.Version11:
return "Activation/Coordinator11/";
default:
return null; // inaccessible path because we have asserted the protocol version
}
}
public static string RegistrationCoordinatorSuffix(ProtocolVersion protocolVersion)
{
ProtocolVersionHelper.AssertProtocolVersion(protocolVersion, typeof(BindingStrings), "RegistrationCoordinatorSuffix"); //assert valid protocol version
switch (protocolVersion)
{
case ProtocolVersion.Version10:
return "Registration/Coordinator/";
case ProtocolVersion.Version11:
return "Registration/Coordinator11/";
default:
return null; // inaccessible path because we have asserted the protocol version
}
}
public static string CompletionCoordinatorSuffix(ProtocolVersion protocolVersion)
{
ProtocolVersionHelper.AssertProtocolVersion(protocolVersion, typeof(BindingStrings), "CompletionCoordinatorSuffix"); //assert valid protocol version
switch (protocolVersion)
{
case ProtocolVersion.Version10:
return "Completion/Coordinator/";
case ProtocolVersion.Version11:
return "Completion/Coordinator11/";
default:
return null; // inaccessible path because we have asserted the protocol version
}
}
public static string CompletionParticipantSuffix(ProtocolVersion protocolVersion)
{
ProtocolVersionHelper.AssertProtocolVersion(protocolVersion, typeof(BindingStrings), "CompletionParticipantSuffix"); //assert valid protocol version
switch (protocolVersion)
{
case ProtocolVersion.Version10:
return "Completion/Participant/";
case ProtocolVersion.Version11:
return "Completion/Participant11/";
default:
return null; // inaccessible path because we have asserted the protocol version
}
}
public static string TwoPhaseCommitCoordinatorSuffix(ProtocolVersion protocolVersion)
{
ProtocolVersionHelper.AssertProtocolVersion(protocolVersion, typeof(BindingStrings), "TwoPhaseCommitCoordinatorSuffix"); //assert valid protocol version
switch (protocolVersion)
{
case ProtocolVersion.Version10:
return "TwoPhaseCommit/Coordinator/";
case ProtocolVersion.Version11:
return "TwoPhaseCommit/Coordinator11/";
default:
return null; // inaccessible path because we have asserted the protocol version
}
}
public static string TwoPhaseCommitParticipantSuffix(ProtocolVersion protocolVersion)
{
ProtocolVersionHelper.AssertProtocolVersion(protocolVersion, typeof(BindingStrings), "TwoPhaseCommitParticipantSuffix"); //assert valid protocol version
switch (protocolVersion)
{
case ProtocolVersion.Version10:
return "TwoPhaseCommit/Participant/";
case ProtocolVersion.Version11:
return "TwoPhaseCommit/Participant11/";
default:
return null; // inaccessible path because we have asserted the protocol version
}
}
}
}
// 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
- IISMapPath.cs
- errorpatternmatcher.cs
- AssemblyResolver.cs
- Matrix.cs
- IgnoreSection.cs
- PasswordRecovery.cs
- DataGridViewCellErrorTextNeededEventArgs.cs
- PropertyEmitterBase.cs
- XmlSchemaValidationException.cs
- DataGridItemEventArgs.cs
- WeakEventManager.cs
- DoWorkEventArgs.cs
- CodeMethodInvokeExpression.cs
- SiteMapSection.cs
- HtmlHead.cs
- VisualTreeUtils.cs
- CombinedHttpChannel.cs
- PropertyInfoSet.cs
- DownloadProgressEventArgs.cs
- WebChannelFactory.cs
- DetailsViewPageEventArgs.cs
- PasswordPropertyTextAttribute.cs
- ColorConvertedBitmap.cs
- WebPartEditVerb.cs
- Win32PrintDialog.cs
- DataViewManagerListItemTypeDescriptor.cs
- CalendarDateRange.cs
- Int32Storage.cs
- ViewCellSlot.cs
- SqlExpander.cs
- DiscoveryInnerClientAdhoc11.cs
- WorkflowMessageEventArgs.cs
- WindowsFormsSectionHandler.cs
- MultiView.cs
- WebPartTransformerAttribute.cs
- ACL.cs
- Timeline.cs
- DefaultAuthorizationContext.cs
- ExpressionVisitorHelpers.cs
- OracleNumber.cs
- XmlSubtreeReader.cs
- SiteMap.cs
- RepeatBehavior.cs
- HttpCacheVary.cs
- InfoCardCryptoHelper.cs
- MiniCustomAttributeInfo.cs
- PartialTrustVisibleAssembliesSection.cs
- WmfPlaceableFileHeader.cs
- FlowDocumentPaginator.cs
- COM2AboutBoxPropertyDescriptor.cs
- LinqDataSourceDeleteEventArgs.cs
- XamlDesignerSerializationManager.cs
- OdbcRowUpdatingEvent.cs
- DependentList.cs
- CfgSemanticTag.cs
- DbExpressionRules.cs
- ZipIOCentralDirectoryFileHeader.cs
- ListViewTableCell.cs
- FontNameEditor.cs
- DatePickerDateValidationErrorEventArgs.cs
- TriggerActionCollection.cs
- OuterGlowBitmapEffect.cs
- RegexMatchCollection.cs
- COMException.cs
- ButtonPopupAdapter.cs
- ServiceDescriptions.cs
- SqlUnionizer.cs
- IPEndPoint.cs
- SelectedDatesCollection.cs
- QilReplaceVisitor.cs
- BooleanKeyFrameCollection.cs
- IdentityReference.cs
- JournalEntryListConverter.cs
- IsolatedStoragePermission.cs
- Property.cs
- RenderOptions.cs
- ExcludePathInfo.cs
- NullableBoolConverter.cs
- DataGridItem.cs
- LoginAutoFormat.cs
- ExtenderProvidedPropertyAttribute.cs
- DataGridViewRowPrePaintEventArgs.cs
- TypeHelper.cs
- Transform3DCollection.cs
- QueryExtender.cs
- CommonEndpointBehaviorElement.cs
- ConnectionManagementElementCollection.cs
- MimeObjectFactory.cs
- RawStylusInputCustomData.cs
- FixedPageAutomationPeer.cs
- ReliabilityContractAttribute.cs
- StylusTip.cs
- WebResponse.cs
- ImageBrush.cs
- PageTheme.cs
- BamlBinaryWriter.cs
- RootProfilePropertySettingsCollection.cs
- UrlPath.cs
- HttpWriter.cs
- InheritanceRules.cs