Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.ServiceModel.Routing / System / ServiceModel / Routing / RoutingUtilities.cs / 1305376 / RoutingUtilities.cs
//---------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------- namespace System.ServiceModel.Routing { using System; using System.ServiceModel; using System.ServiceModel.Channels; using System.ServiceModel.Description; using System.Transactions; using SR2 = System.ServiceModel.Routing.SR; using System.Runtime; static class RoutingUtilities { internal const string RoutingNamespace = "http://schemas.microsoft.com/netfx/2009/05/routing"; internal static void Abort(ICommunicationObject commObj, object identifier) { if (TD.RoutingServiceAbortingChannelIsEnabled()) { TD.RoutingServiceAbortingChannel(identifier != null ? identifier.ToString() : string.Empty); } //The Exception contract for ICommunicationObject.Abort is to never throw, anything else is a fatal error. commObj.Abort(); } internal static bool IsMessageUsingWSSecurity(UnderstoodHeaders understoodHeaders) { foreach (MessageHeaderInfo headerInfo in understoodHeaders) { if (string.Equals(headerInfo.Namespace, "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd", StringComparison.Ordinal) || //wsu string.Equals(headerInfo.Namespace, "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd", StringComparison.Ordinal) || //wsse string.Equals(headerInfo.Namespace, "http://docs.oasis-open.org/wss/oasis-wss-wsecurity-secext-1.1.xsd", StringComparison.Ordinal)) //wsse11 { return true; } } return false; } internal static string GetAddressingNamespace(AddressingVersion addressing) { string ns; if (addressing == AddressingVersion.WSAddressingAugust2004) { ns = "http://schemas.xmlsoap.org/ws/2004/08/addressing"; } else if (addressing == AddressingVersion.WSAddressing10) { ns = "http://www.w3.org/2005/08/addressing"; } else if (addressing == AddressingVersion.None) { ns = "http://schemas.microsoft.com/ws/2005/05/addressing/none"; } else { throw FxTrace.Exception.Argument("addressing", SR2.AddressingVersionInvalid(addressing.ToString())); } return ns; } internal static bool IsRoutingServiceNamespace(string contractNamespace) { return string.Equals(contractNamespace, RoutingUtilities.RoutingNamespace, StringComparison.Ordinal); } internal static bool IsTransactedReceive(Binding binding, BindingParameterCollection bindingParameters) { // New school ITransactedBindingElement transactedBindingElement = binding.GetProperty(bindingParameters); if (transactedBindingElement != null) { return transactedBindingElement.TransactedReceiveEnabled; } // Old School foreach (BindingElement element in binding.CreateBindingElements()) { transactedBindingElement = element as ITransactedBindingElement; if (transactedBindingElement != null && transactedBindingElement.TransactedReceiveEnabled) { return true; } } return false; } internal static void SafeRollbackTransaction(CommittableTransaction transaction) { if (transaction != null) { try { transaction.Rollback(); transaction.Dispose(); } catch (TransactionException transactionException) { if (TD.RoutingServiceHandledExceptionIsEnabled()) { TD.RoutingServiceHandledException(transactionException); } } catch (ObjectDisposedException disposedException) { if (TD.RoutingServiceHandledExceptionIsEnabled()) { TD.RoutingServiceHandledException(disposedException); } } } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- BindingExpressionBase.cs
- QilLiteral.cs
- OracleEncoding.cs
- HtmlLink.cs
- Double.cs
- AsymmetricKeyExchangeFormatter.cs
- HwndSource.cs
- ColumnWidthChangedEvent.cs
- MenuTracker.cs
- MenuAdapter.cs
- ICspAsymmetricAlgorithm.cs
- ProxyHelper.cs
- GroupAggregateExpr.cs
- XmlBoundElement.cs
- ITreeGenerator.cs
- XmlSchemaAttributeGroup.cs
- InstalledFontCollection.cs
- OrderedDictionary.cs
- EmptyElement.cs
- XmlSchemaSimpleContentExtension.cs
- CanonicalFontFamilyReference.cs
- ColumnMap.cs
- XLinq.cs
- translator.cs
- CompositeDataBoundControl.cs
- BuilderInfo.cs
- XsdDuration.cs
- OlePropertyStructs.cs
- RequestNavigateEventArgs.cs
- ZipIOZip64EndOfCentralDirectoryBlock.cs
- Pens.cs
- MenuItemBinding.cs
- AccessViolationException.cs
- TheQuery.cs
- ColorAnimationUsingKeyFrames.cs
- HttpValueCollection.cs
- DependencyObject.cs
- HttpResponse.cs
- ListViewItemSelectionChangedEvent.cs
- ImageSourceValueSerializer.cs
- HttpRequest.cs
- CollectionChange.cs
- UIHelper.cs
- BamlMapTable.cs
- ClientConfigurationSystem.cs
- XpsSerializationException.cs
- PtsHost.cs
- Thread.cs
- MenuItem.cs
- UIElementPropertyUndoUnit.cs
- SrgsElementFactoryCompiler.cs
- AppManager.cs
- formatter.cs
- ZipFileInfoCollection.cs
- UIElementParagraph.cs
- CanonicalizationDriver.cs
- ToolboxItemLoader.cs
- XmlSchemaImporter.cs
- DocumentApplication.cs
- DataContractFormatAttribute.cs
- EntityTypeEmitter.cs
- PassportPrincipal.cs
- RoleGroup.cs
- Matrix3DValueSerializer.cs
- RowUpdatedEventArgs.cs
- SoapCommonClasses.cs
- MultiAsyncResult.cs
- UInt32Converter.cs
- Context.cs
- Container.cs
- VariableAction.cs
- SqlCommand.cs
- XmlImplementation.cs
- Attributes.cs
- BrowserCapabilitiesCompiler.cs
- NameValueCollection.cs
- SynchronizedDispatch.cs
- _ShellExpression.cs
- XamlParser.cs
- TreeNodeStyleCollection.cs
- TextEditor.cs
- Exception.cs
- DataProtection.cs
- TextServicesDisplayAttribute.cs
- SoapInteropTypes.cs
- InstanceKeyView.cs
- TemplateControl.cs
- ListViewDataItem.cs
- SectionXmlInfo.cs
- HtmlElementCollection.cs
- _NegoStream.cs
- New.cs
- QueryRewriter.cs
- CallbackValidatorAttribute.cs
- CheckedPointers.cs
- TableHeaderCell.cs
- SelectionProviderWrapper.cs
- XmlCDATASection.cs
- DoubleLink.cs
- RemoveStoryboard.cs