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
- BaseDataBoundControl.cs
- ReservationCollection.cs
- PropertiesTab.cs
- ClockGroup.cs
- LookupNode.cs
- ConsoleKeyInfo.cs
- SchemaTableColumn.cs
- ConstructorBuilder.cs
- propertytag.cs
- OptionalMessageQuery.cs
- ListControlActionList.cs
- RadialGradientBrush.cs
- PaintEvent.cs
- TemplatedWizardStep.cs
- SecurityTokenValidationException.cs
- XmlNodeList.cs
- LineUtil.cs
- TypeHelpers.cs
- TreeNodeEventArgs.cs
- XmlIterators.cs
- ListItemsPage.cs
- SerializationSectionGroup.cs
- BitmapData.cs
- EventProperty.cs
- WebSysDescriptionAttribute.cs
- WorkflowControlClient.cs
- WebPartPersonalization.cs
- NavigationWindow.cs
- DataRow.cs
- ObjectDataSourceChooseMethodsPanel.cs
- UnaryQueryOperator.cs
- Perspective.cs
- AdCreatedEventArgs.cs
- HtmlElementEventArgs.cs
- Typography.cs
- VectorAnimation.cs
- KerberosSecurityTokenAuthenticator.cs
- DecoderNLS.cs
- WebPartDescriptionCollection.cs
- BorderGapMaskConverter.cs
- TextDecorationCollection.cs
- SortedDictionary.cs
- Enum.cs
- DefaultPropertyAttribute.cs
- ArcSegment.cs
- CursorConverter.cs
- InteropAutomationProvider.cs
- SqlGenericUtil.cs
- WebPartEditorCancelVerb.cs
- XmlSchemas.cs
- ThreadAbortException.cs
- SchemaTableOptionalColumn.cs
- _TimerThread.cs
- DbReferenceCollection.cs
- DataRowView.cs
- ExpressionBuilderContext.cs
- ParseHttpDate.cs
- CompressStream.cs
- SqlReferenceCollection.cs
- Opcode.cs
- PtsContext.cs
- StylusPointPropertyInfo.cs
- SetStateDesigner.cs
- ExtendLockAsyncResult.cs
- Stack.cs
- ObjectKeyFrameCollection.cs
- CancelEventArgs.cs
- TextSelectionHighlightLayer.cs
- WebPartEditorCancelVerb.cs
- FileDialogPermission.cs
- documentation.cs
- SafeNativeMethods.cs
- NumberSubstitution.cs
- CacheAxisQuery.cs
- FormsIdentity.cs
- TimeSpanValidator.cs
- ValidationHelpers.cs
- ExpressionVisitor.cs
- ColorContext.cs
- EpmSourcePathSegment.cs
- DataExchangeServiceBinder.cs
- FlowDocumentFormatter.cs
- SchemaInfo.cs
- DbMetaDataCollectionNames.cs
- CapacityStreamGeometryContext.cs
- exports.cs
- WrappedIUnknown.cs
- DataGridViewToolTip.cs
- ViewBase.cs
- X509CertificateCollection.cs
- StandardBindingImporter.cs
- CodeGenerator.cs
- SqlNamer.cs
- InterleavedZipPartStream.cs
- IntSecurity.cs
- DataRelationCollection.cs
- PathFigureCollectionValueSerializer.cs
- Control.cs
- DateRangeEvent.cs
- TypeResolver.cs