Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Channels / ChannelPoolSettings.cs / 1 / ChannelPoolSettings.cs
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------
namespace System.ServiceModel.Channels
{
using System.Collections.Generic;
using System.ServiceModel;
using System.Runtime.Serialization;
using System.Xml;
using System.ServiceModel.Description;
using System.ServiceModel.Security;
public class ChannelPoolSettings
{
TimeSpan idleTimeout;
TimeSpan leaseTimeout;
int maxOutboundChannelsPerEndpoint;
public ChannelPoolSettings()
{
this.idleTimeout = OneWayDefaults.IdleTimeout;
this.leaseTimeout = OneWayDefaults.LeaseTimeout;
this.maxOutboundChannelsPerEndpoint = OneWayDefaults.MaxOutboundChannelsPerEndpoint;
}
ChannelPoolSettings(ChannelPoolSettings poolToBeCloned)
{
this.idleTimeout = poolToBeCloned.idleTimeout;
this.leaseTimeout = poolToBeCloned.leaseTimeout;
this.maxOutboundChannelsPerEndpoint = poolToBeCloned.maxOutboundChannelsPerEndpoint;
}
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 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 MaxOutboundChannelsPerEndpoint
{
get
{
return this.maxOutboundChannelsPerEndpoint;
}
set
{
if (value <= 0)
{
throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new ArgumentOutOfRangeException("value", value,
SR.GetString(SR.ValueMustBePositive)));
}
this.maxOutboundChannelsPerEndpoint = value;
}
}
internal ChannelPoolSettings Clone()
{
return new ChannelPoolSettings(this);
}
internal bool IsMatch(ChannelPoolSettings channelPoolSettings)
{
if (channelPoolSettings == null)
{
return false;
}
if (this.idleTimeout != channelPoolSettings.idleTimeout)
{
return false;
}
if (this.leaseTimeout != channelPoolSettings.leaseTimeout)
{
return false;
}
if (this.maxOutboundChannelsPerEndpoint != channelPoolSettings.maxOutboundChannelsPerEndpoint)
{
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
- EntityContainerRelationshipSetEnd.cs
- OdbcConnectionString.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- DataKeyArray.cs
- ViewCellSlot.cs
- TempFiles.cs
- ResXBuildProvider.cs
- RotateTransform3D.cs
- SqlTypeSystemProvider.cs
- GridViewCancelEditEventArgs.cs
- AutomationElementCollection.cs
- SupportsEventValidationAttribute.cs
- WCFModelStrings.Designer.cs
- SimpleRecyclingCache.cs
- UnsafeNativeMethodsMilCoreApi.cs
- PointUtil.cs
- ColumnMapVisitor.cs
- InstanceKeyView.cs
- WindowsListViewGroupHelper.cs
- WpfKnownMember.cs
- EndEvent.cs
- TabControlEvent.cs
- CornerRadiusConverter.cs
- PlaceHolder.cs
- ActivationArguments.cs
- Wildcard.cs
- SqlBulkCopyColumnMappingCollection.cs
- BufferBuilder.cs
- Unit.cs
- EdmEntityTypeAttribute.cs
- DetailsView.cs
- BuildProvider.cs
- PrintDialog.cs
- DependencyPropertyDescriptor.cs
- MimeFormatter.cs
- RectAnimationUsingKeyFrames.cs
- _SSPIWrapper.cs
- Rect.cs
- LinqDataSourceSelectEventArgs.cs
- Animatable.cs
- Int16AnimationBase.cs
- MimeXmlReflector.cs
- _StreamFramer.cs
- WebPartTransformerAttribute.cs
- HttpListener.cs
- AppDomainProtocolHandler.cs
- Image.cs
- DictionaryEntry.cs
- WindowsSecurityToken.cs
- LinearQuaternionKeyFrame.cs
- HashRepartitionStream.cs
- ApplicationInfo.cs
- UrlMappingCollection.cs
- ColumnWidthChangedEvent.cs
- ConstraintConverter.cs
- DoubleAnimationBase.cs
- TextEndOfParagraph.cs
- columnmapfactory.cs
- StaticDataManager.cs
- SchemaAttDef.cs
- panel.cs
- SmiMetaDataProperty.cs
- MsmqPoisonMessageException.cs
- ExportOptions.cs
- EventProxy.cs
- SchemaElement.cs
- WorkflowInstanceExtensionProvider.cs
- DocumentSequence.cs
- NonParentingControl.cs
- fixedPageContentExtractor.cs
- WorkflowQueuingService.cs
- MetadataPropertyvalue.cs
- SerializationException.cs
- ScopeCompiler.cs
- Help.cs
- ObjectTag.cs
- RawStylusInputCustomData.cs
- documentsequencetextpointer.cs
- WebPartCollection.cs
- PlatformCulture.cs
- IndexerNameAttribute.cs
- CustomValidator.cs
- LinkUtilities.cs
- nulltextnavigator.cs
- TcpConnectionPoolSettings.cs
- BezierSegment.cs
- MsmqInputSessionChannel.cs
- AppliesToBehaviorDecisionTable.cs
- ManualResetEventSlim.cs
- ZipIOZip64EndOfCentralDirectoryBlock.cs
- GroupByExpressionRewriter.cs
- TableRowCollection.cs
- XsdBuilder.cs
- RepeaterItemEventArgs.cs
- QilStrConcatenator.cs
- EastAsianLunisolarCalendar.cs
- SchemaComplexType.cs
- DataException.cs
- WebDescriptionAttribute.cs
- BitmapMetadata.cs