Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Channels / TcpConnectionPool.cs / 1 / TcpConnectionPool.cs
//----------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//---------------------------------------------------------------------------
namespace System.ServiceModel.Channels
{
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Diagnostics;
using System.Net;
using System.Net.Sockets;
using System.Globalization;
using System.ServiceModel.Diagnostics;
class TcpConnectionPoolRegistry : ConnectionPoolRegistry
{
public TcpConnectionPoolRegistry()
: base()
{
}
protected override ConnectionPool CreatePool(IConnectionOrientedTransportChannelFactorySettings settings)
{
ITcpChannelFactorySettings tcpSettings = (ITcpChannelFactorySettings)settings;
return new TcpConnectionPool(tcpSettings);
}
class TcpConnectionPool : ConnectionPool
{
public TcpConnectionPool(ITcpChannelFactorySettings settings)
: base(settings, settings.LeaseTimeout)
{
}
protected override string GetPoolKey(EndpointAddress address, Uri via)
{
int port = via.Port;
if (port == -1)
{
port = TcpUri.DefaultPort;
}
string normalizedHost = via.DnsSafeHost.ToUpperInvariant();
return string.Format(CultureInfo.InvariantCulture, @"[{0}, {1}]", normalizedHost, port);
}
public override bool IsCompatible(IConnectionOrientedTransportChannelFactorySettings settings)
{
ITcpChannelFactorySettings tcpSettings = (ITcpChannelFactorySettings)settings;
return (
(this.LeaseTimeout == tcpSettings.LeaseTimeout) &&
base.IsCompatible(settings)
);
}
}
}
}
// 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
- DocumentEventArgs.cs
- SecurityCookieModeValidator.cs
- MouseGesture.cs
- BasicHttpBindingElement.cs
- PrintControllerWithStatusDialog.cs
- ResourceWriter.cs
- UnsafeNativeMethodsMilCoreApi.cs
- SecondaryIndexList.cs
- DynamicHyperLink.cs
- TaiwanLunisolarCalendar.cs
- MenuItem.cs
- DeobfuscatingStream.cs
- TextFormatterHost.cs
- UserControl.cs
- Form.cs
- VisualStyleElement.cs
- MarkerProperties.cs
- NetworkStream.cs
- JsonCollectionDataContract.cs
- AutoGeneratedFieldProperties.cs
- BinaryObjectInfo.cs
- MouseGesture.cs
- KnownTypesProvider.cs
- FloaterParaClient.cs
- FixedElement.cs
- controlskin.cs
- GrammarBuilderRuleRef.cs
- ComplexType.cs
- FaultContractInfo.cs
- TypeConverterValueSerializer.cs
- StrokeRenderer.cs
- NativeMethodsOther.cs
- ParserOptions.cs
- CodeGotoStatement.cs
- XsdDateTime.cs
- VectorAnimationUsingKeyFrames.cs
- MessageDescription.cs
- BlobPersonalizationState.cs
- HostAdapter.cs
- TextPattern.cs
- ByValueEqualityComparer.cs
- Vector3DAnimation.cs
- SupportsEventValidationAttribute.cs
- PasswordDeriveBytes.cs
- SystemColors.cs
- SEHException.cs
- JsonMessageEncoderFactory.cs
- SamlAdvice.cs
- StreamGeometry.cs
- EpmSyndicationContentSerializer.cs
- DocumentXPathNavigator.cs
- CharUnicodeInfo.cs
- ScriptingRoleServiceSection.cs
- Converter.cs
- CodeGroup.cs
- MDIWindowDialog.cs
- EncoderNLS.cs
- TreeWalkHelper.cs
- CaseInsensitiveOrdinalStringComparer.cs
- PageBuildProvider.cs
- GorillaCodec.cs
- ObjectHelper.cs
- XsltOutput.cs
- EntryWrittenEventArgs.cs
- AssemblyCacheEntry.cs
- StyleCollection.cs
- RandomNumberGenerator.cs
- PageBuildProvider.cs
- InternalMappingException.cs
- sqlser.cs
- CalendarAutoFormatDialog.cs
- SystemMulticastIPAddressInformation.cs
- ScaleTransform.cs
- LocatorPart.cs
- UIPermission.cs
- Accessors.cs
- BitmapPalette.cs
- DoubleIndependentAnimationStorage.cs
- PerfCounters.cs
- EpmCustomContentSerializer.cs
- MaskedTextBoxTextEditorDropDown.cs
- EntityWrapper.cs
- ScalarOps.cs
- CollectionContainer.cs
- CodeAccessSecurityEngine.cs
- TableItemStyle.cs
- QilList.cs
- hresults.cs
- UpdateException.cs
- Currency.cs
- DetailsViewInsertedEventArgs.cs
- WebPartEventArgs.cs
- ProjectionQueryOptionExpression.cs
- TypedElement.cs
- LoadWorkflowByKeyAsyncResult.cs
- EntityClassGenerator.cs
- RepeatButton.cs
- IdentityHolder.cs
- srgsitem.cs
- LinkedResource.cs