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
- HighContrastHelper.cs
- PropVariant.cs
- VoiceObjectToken.cs
- ConnectionPool.cs
- XmlRawWriterWrapper.cs
- Overlapped.cs
- BitmapEffectDrawing.cs
- GradientStopCollection.cs
- TextSchema.cs
- UnsafeNativeMethods.cs
- DataColumn.cs
- GridViewDeletedEventArgs.cs
- Section.cs
- SoapServerMethod.cs
- FontCollection.cs
- AtomEntry.cs
- StringHandle.cs
- TextWriter.cs
- EarlyBoundInfo.cs
- SystemException.cs
- CodeLinePragma.cs
- AuthenticationModulesSection.cs
- ArcSegment.cs
- unitconverter.cs
- APCustomTypeDescriptor.cs
- WebPartEditorApplyVerb.cs
- DataGridViewSelectedCellsAccessibleObject.cs
- HitTestWithGeometryDrawingContextWalker.cs
- _HeaderInfoTable.cs
- XPathExpr.cs
- ItemsPanelTemplate.cs
- ComPlusServiceHost.cs
- HandlerMappingMemo.cs
- ResourceKey.cs
- TextChangedEventArgs.cs
- HelpKeywordAttribute.cs
- Rijndael.cs
- IncrementalReadDecoders.cs
- SmtpReplyReaderFactory.cs
- TextPattern.cs
- ManipulationPivot.cs
- FrugalList.cs
- SecurityDocument.cs
- ThreadStateException.cs
- TraceContextRecord.cs
- GraphicsPath.cs
- AssemblyResourceLoader.cs
- XPathScanner.cs
- SqlNodeTypeOperators.cs
- SelectedDatesCollection.cs
- RenderDataDrawingContext.cs
- ConfigurationSectionGroupCollection.cs
- PersonalizationStateInfo.cs
- OrderingQueryOperator.cs
- GraphicsContainer.cs
- KeyEventArgs.cs
- SymmetricKey.cs
- ExpressionConverter.cs
- TextTreeTextNode.cs
- RootAction.cs
- SchemaTableOptionalColumn.cs
- MissingFieldException.cs
- MSAANativeProvider.cs
- ReadWriteSpinLock.cs
- MatrixConverter.cs
- AmbiguousMatchException.cs
- IPGlobalProperties.cs
- ApplicationDirectoryMembershipCondition.cs
- TreeChangeInfo.cs
- StatusBarItem.cs
- DictionaryTraceRecord.cs
- OdbcError.cs
- OrderByLifter.cs
- OutputCacheModule.cs
- ScrollChrome.cs
- IssuedTokenClientBehaviorsElementCollection.cs
- TraceHandlerErrorFormatter.cs
- SharedConnectionWorkflowTransactionService.cs
- Selection.cs
- CodeGeneratorOptions.cs
- SecurityPermission.cs
- EncoderExceptionFallback.cs
- MeasurementDCInfo.cs
- TextEditorDragDrop.cs
- DataView.cs
- BmpBitmapDecoder.cs
- TextRangeEditTables.cs
- Overlapped.cs
- XPathParser.cs
- AssociatedControlConverter.cs
- ToolboxComponentsCreatingEventArgs.cs
- Transform3DGroup.cs
- IERequestCache.cs
- TabControlEvent.cs
- TableColumn.cs
- TeredoHelper.cs
- WebPartUserCapability.cs
- Evaluator.cs
- OleDbCommandBuilder.cs
- HttpHandlersSection.cs