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
- MouseDevice.cs
- CodeArrayIndexerExpression.cs
- Stylesheet.cs
- RawStylusInputCustomData.cs
- RangeBaseAutomationPeer.cs
- Grid.cs
- DataContractJsonSerializerOperationFormatter.cs
- ServicePointManagerElement.cs
- DataGridAddNewRow.cs
- ArrayListCollectionBase.cs
- CompiledAction.cs
- ValueUnavailableException.cs
- PropertyPushdownHelper.cs
- ArcSegment.cs
- ToolStripContainer.cs
- PlanCompiler.cs
- EventEntry.cs
- Point3DConverter.cs
- XmlSchemaSequence.cs
- Region.cs
- UnsettableComboBox.cs
- RegexNode.cs
- ListViewItem.cs
- BooleanProjectedSlot.cs
- SByteStorage.cs
- WaitHandleCannotBeOpenedException.cs
- PropertyPushdownHelper.cs
- SpecularMaterial.cs
- GridViewDeletedEventArgs.cs
- FullTextBreakpoint.cs
- HtmlEmptyTagControlBuilder.cs
- XmlChildNodes.cs
- DataRelationPropertyDescriptor.cs
- DbConnectionPoolGroup.cs
- SafePEFileHandle.cs
- InputLanguage.cs
- SourceFilter.cs
- AnnouncementEventArgs.cs
- SqlBulkCopy.cs
- BinaryObjectWriter.cs
- CustomBindingElementCollection.cs
- PhoneCallDesigner.cs
- ResourcePermissionBase.cs
- Int64Converter.cs
- ObfuscationAttribute.cs
- DateTimePicker.cs
- LocalizableAttribute.cs
- DependentList.cs
- DataBindingCollection.cs
- DoubleAnimation.cs
- PointValueSerializer.cs
- FixedSOMLineCollection.cs
- XslCompiledTransform.cs
- CalendarItem.cs
- ToolStripSeparatorRenderEventArgs.cs
- QueueNameHelper.cs
- PeerNameRecord.cs
- SqlMultiplexer.cs
- ActivationArguments.cs
- HMACRIPEMD160.cs
- TrackBarDesigner.cs
- GridViewDeletedEventArgs.cs
- DataTemplate.cs
- GridViewEditEventArgs.cs
- xml.cs
- PrivateUnsafeNativeCompoundFileMethods.cs
- PropertyInfoSet.cs
- ExpandSegmentCollection.cs
- ButtonPopupAdapter.cs
- KerberosSecurityTokenProvider.cs
- TextRunProperties.cs
- Int64AnimationBase.cs
- Calendar.cs
- ComponentConverter.cs
- GeometryCombineModeValidation.cs
- AccessDataSource.cs
- ReadOnlyCollection.cs
- __TransparentProxy.cs
- SafePointer.cs
- ToolStripHighContrastRenderer.cs
- HtmlInputRadioButton.cs
- AccessViolationException.cs
- BatchParser.cs
- Html32TextWriter.cs
- Matrix.cs
- UnsafeNativeMethodsPenimc.cs
- GeometryDrawing.cs
- ContentWrapperAttribute.cs
- DesignSurfaceManager.cs
- SurrogateSelector.cs
- CustomTokenProvider.cs
- CategoryGridEntry.cs
- versioninfo.cs
- RemoteWebConfigurationHost.cs
- NamespaceImport.cs
- Invariant.cs
- DrawItemEvent.cs
- GACIdentityPermission.cs
- AssemblySettingAttributes.cs
- FontFaceLayoutInfo.cs