Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Channels / TcpConnectionPoolSettings.cs / 1 / TcpConnectionPoolSettings.cs
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------
namespace System.ServiceModel.Channels
{
public sealed class TcpConnectionPoolSettings
{
string groupName;
TimeSpan idleTimeout;
TimeSpan leaseTimeout;
int maxOutboundConnectionsPerEndpoint;
internal TcpConnectionPoolSettings()
{
groupName = ConnectionOrientedTransportDefaults.ConnectionPoolGroupName;
idleTimeout = ConnectionOrientedTransportDefaults.IdleTimeout;
leaseTimeout = TcpTransportDefaults.ConnectionLeaseTimeout;
maxOutboundConnectionsPerEndpoint = ConnectionOrientedTransportDefaults.MaxOutboundConnectionsPerEndpoint;
}
internal TcpConnectionPoolSettings(TcpConnectionPoolSettings tcp)
{
this.groupName = tcp.groupName;
this.idleTimeout = tcp.idleTimeout;
this.leaseTimeout = tcp.leaseTimeout;
this.maxOutboundConnectionsPerEndpoint = tcp.maxOutboundConnectionsPerEndpoint;
}
public string GroupName
{
get { return this.groupName; }
set
{
if (value == null)
throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("value");
this.groupName = value;
}
}
public TimeSpan IdleTimeout
{
get { return this.idleTimeout; }
set
{
if (value < TimeSpan.Zero)
{
throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value", value,
SR.GetString(SR.SFxTimeoutOutOfRange0)));
}
if (TimeoutHelper.IsTooLarge(value))
{
throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value", value,
SR.GetString(SR.SFxTimeoutOutOfRangeTooBig)));
}
this.idleTimeout = value;
}
}
public TimeSpan LeaseTimeout
{
get { return this.leaseTimeout; }
set
{
if (value < TimeSpan.Zero)
{
throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value", value,
SR.GetString(SR.SFxTimeoutOutOfRange0)));
}
if (TimeoutHelper.IsTooLarge(value))
{
throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value", value,
SR.GetString(SR.SFxTimeoutOutOfRangeTooBig)));
}
this.leaseTimeout = value;
}
}
public int MaxOutboundConnectionsPerEndpoint
{
get { return this.maxOutboundConnectionsPerEndpoint; }
set
{
if (value < 0)
throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value", value,
SR.GetString(SR.ValueMustBeNonNegative)));
this.maxOutboundConnectionsPerEndpoint = value;
}
}
internal TcpConnectionPoolSettings Clone()
{
return new TcpConnectionPoolSettings(this);
}
internal bool IsMatch(TcpConnectionPoolSettings tcp)
{
if (this.groupName != tcp.groupName)
return false;
if (this.idleTimeout != tcp.idleTimeout)
return false;
if (this.leaseTimeout != tcp.leaseTimeout)
return false;
if (this.maxOutboundConnectionsPerEndpoint != tcp.maxOutboundConnectionsPerEndpoint)
return false;
return true;
}
}
}
// 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
- SoapCommonClasses.cs
- OdbcCommand.cs
- PathFigureCollection.cs
- BitmapFrameEncode.cs
- GlyphRunDrawing.cs
- BackgroundFormatInfo.cs
- WebHttpBindingElement.cs
- SpeechRecognitionEngine.cs
- GifBitmapDecoder.cs
- IResourceProvider.cs
- TimerElapsedEvenArgs.cs
- RectangleConverter.cs
- AppLevelCompilationSectionCache.cs
- HeaderPanel.cs
- StringValidator.cs
- InvokePattern.cs
- ListBindingHelper.cs
- SiteOfOriginContainer.cs
- Listen.cs
- wgx_exports.cs
- DataSourceDescriptorCollection.cs
- WindowsListViewItemStartMenu.cs
- CollectionViewGroup.cs
- EventHandlerList.cs
- KeyInstance.cs
- UInt16Storage.cs
- InputLanguageManager.cs
- PathFigureCollection.cs
- SqlCommand.cs
- SelectionRange.cs
- FormatConvertedBitmap.cs
- SafeNativeMethods.cs
- GlobalizationSection.cs
- TableLayoutPanelResizeGlyph.cs
- GenericAuthenticationEventArgs.cs
- CompositeKey.cs
- ReadOnlyCollectionBase.cs
- Transform3DGroup.cs
- ConnectionManagementElementCollection.cs
- EncoderNLS.cs
- AsynchronousChannel.cs
- CustomValidator.cs
- WindowsFormsSectionHandler.cs
- DeferrableContentConverter.cs
- ObjectParameter.cs
- StaticTextPointer.cs
- ACL.cs
- StateMachineSubscription.cs
- PathFigureCollectionValueSerializer.cs
- ResourceDescriptionAttribute.cs
- RegexInterpreter.cs
- PolicyManager.cs
- SoapSchemaMember.cs
- InfoCardRSAPKCS1SignatureFormatter.cs
- PointUtil.cs
- Timer.cs
- XmlNodeList.cs
- SingleStorage.cs
- TextViewElement.cs
- ObfuscationAttribute.cs
- SoapSchemaImporter.cs
- RelationshipEndCollection.cs
- EnumValAlphaComparer.cs
- WebErrorHandler.cs
- ThemeDictionaryExtension.cs
- Soap12ServerProtocol.cs
- OracleBFile.cs
- TimelineClockCollection.cs
- SimpleFieldTemplateUserControl.cs
- KeysConverter.cs
- ListControl.cs
- Brushes.cs
- webbrowsersite.cs
- StylusButtonCollection.cs
- HttpPostClientProtocol.cs
- _CommandStream.cs
- DataSysAttribute.cs
- DataTransferEventArgs.cs
- GridViewRow.cs
- HashAlgorithm.cs
- TemplateComponentConnector.cs
- RuntimeArgumentHandle.cs
- X509ThumbprintKeyIdentifierClause.cs
- ViewPort3D.cs
- selecteditemcollection.cs
- ConfigXmlSignificantWhitespace.cs
- _SSPIWrapper.cs
- Evidence.cs
- ConfigErrorGlyph.cs
- RestHandlerFactory.cs
- ContextMenuStripGroupCollection.cs
- WebPartZoneAutoFormat.cs
- CodeParameterDeclarationExpressionCollection.cs
- DoubleStorage.cs
- ItemMap.cs
- DynamicRenderer.cs
- FieldDescriptor.cs
- SourceFilter.cs
- GeneralTransformGroup.cs
- SQlBooleanStorage.cs