Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / System.ServiceModel.Activation / System / ServiceModel / Activation / HostedTransportConfigurationBase.cs / 1305376 / HostedTransportConfigurationBase.cs
//---------------------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------------------- using System.Collections.Generic; using System.ServiceModel; using System.ServiceModel.Channels; using System.Globalization; using System.Web.Hosting; using System.Web; namespace System.ServiceModel.Activation { abstract class HostedTransportConfigurationBase : HostedTransportConfiguration { ListlistenAddresses; string scheme; internal protected HostedTransportConfigurationBase(string scheme) { this.scheme = scheme; this.listenAddresses = new List (); } internal string Scheme { get { return scheme; } } internal protected IList ListenAddresses { get { return listenAddresses; } } public override Uri[] GetBaseAddresses(string virtualPath) { Uri[] addresses = new Uri[listenAddresses.Count]; for (int i = 0; i < listenAddresses.Count; i++) { string absoluteVirtualPath = VirtualPathUtility.ToAbsolute(virtualPath, HostingEnvironmentWrapper.ApplicationVirtualPath); addresses[i] = new Uri(listenAddresses[i].BaseAddress, absoluteVirtualPath); } return addresses; } internal BaseUriWithWildcard FindBaseAddress(Uri uri) { BaseUriWithWildcard foundBaseAddress = null; BaseUriWithWildcard weakBaseAddress = null; for (int i = 0; i < listenAddresses.Count; i++) { if ((string.Compare(listenAddresses[i].BaseAddress.Scheme, uri.Scheme, StringComparison.OrdinalIgnoreCase) == 0) && (listenAddresses[i].BaseAddress.Port == uri.Port)) { if (listenAddresses[i].HostNameComparisonMode == HostNameComparisonMode.StrongWildcard) { return listenAddresses[i]; } if (listenAddresses[i].HostNameComparisonMode == HostNameComparisonMode.WeakWildcard) { weakBaseAddress = listenAddresses[i]; } if ((listenAddresses[i].HostNameComparisonMode == HostNameComparisonMode.Exact) && (string.Compare(listenAddresses[i].BaseAddress.Host, uri.Host, StringComparison.OrdinalIgnoreCase) == 0)) { foundBaseAddress = listenAddresses[i]; } } } if (foundBaseAddress == null) foundBaseAddress = weakBaseAddress; return foundBaseAddress; } } } // 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
- PathTooLongException.cs
- BindingMemberInfo.cs
- XmlIncludeAttribute.cs
- UriWriter.cs
- Transform3DGroup.cs
- CustomTypeDescriptor.cs
- ConstraintManager.cs
- ButtonField.cs
- Enum.cs
- ToolStripActionList.cs
- AutomationPatternInfo.cs
- CmsInterop.cs
- DataGridViewColumnDividerDoubleClickEventArgs.cs
- CipherData.cs
- InputLangChangeRequestEvent.cs
- AudioFormatConverter.cs
- thaishape.cs
- ConfigurationPermission.cs
- PropertyGrid.cs
- WebPartConnectionsEventArgs.cs
- XPathNavigatorKeyComparer.cs
- ReadOnlyCollection.cs
- PersistChildrenAttribute.cs
- Viewport2DVisual3D.cs
- CharacterHit.cs
- GCHandleCookieTable.cs
- ToolStripSettings.cs
- DotAtomReader.cs
- WebPartMenu.cs
- VoiceSynthesis.cs
- SqlDependencyListener.cs
- DisplayClaim.cs
- DataListCommandEventArgs.cs
- DiagnosticsConfigurationHandler.cs
- Span.cs
- RawStylusInputCustomData.cs
- ListViewItemCollectionEditor.cs
- DashStyle.cs
- CollectionViewGroup.cs
- DispatcherObject.cs
- InfiniteTimeSpanConverter.cs
- TabControlCancelEvent.cs
- PlainXmlSerializer.cs
- ByteStreamGeometryContext.cs
- ResourceDisplayNameAttribute.cs
- TaiwanLunisolarCalendar.cs
- Application.cs
- ScriptResourceInfo.cs
- FileDialog.cs
- EncodingFallbackAwareXmlTextWriter.cs
- SystemEvents.cs
- invalidudtexception.cs
- TopClause.cs
- TextEditorCharacters.cs
- MDIClient.cs
- EnumerableValidator.cs
- CheckBoxStandardAdapter.cs
- CompilerWrapper.cs
- ToolStripSplitStackLayout.cs
- TableLayoutSettings.cs
- MetadataItemEmitter.cs
- PhysicalAddress.cs
- CustomValidator.cs
- CqlParser.cs
- BasicHttpBinding.cs
- DataPagerCommandEventArgs.cs
- ConditionCollection.cs
- Int64AnimationUsingKeyFrames.cs
- ACL.cs
- IconConverter.cs
- ControlBuilder.cs
- HtmlDocument.cs
- DiagnosticTraceSource.cs
- Renderer.cs
- ManifestSignatureInformation.cs
- CodeGenerator.cs
- remotingproxy.cs
- ListViewInsertedEventArgs.cs
- DbParameterCollectionHelper.cs
- UpDownEvent.cs
- EntitySqlQueryState.cs
- FrameworkReadOnlyPropertyMetadata.cs
- MailAddressParser.cs
- SmiEventSink_DeferedProcessing.cs
- AutomationIdentifier.cs
- DataControlButton.cs
- XamlFigureLengthSerializer.cs
- CustomActivityDesigner.cs
- FtpWebRequest.cs
- StorageBasedPackageProperties.cs
- HwndKeyboardInputProvider.cs
- DispatcherSynchronizationContext.cs
- ListBoxChrome.cs
- figurelengthconverter.cs
- Permission.cs
- SelectorAutomationPeer.cs
- Privilege.cs
- NegotiateStream.cs
- RightNameExpirationInfoPair.cs
- HScrollProperties.cs