Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Channels / TcpChannelFactory.cs / 1 / TcpChannelFactory.cs
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------
// Enable this to dump contents of a connection a file.
//#define CONNECTIONDUMP
namespace System.ServiceModel.Channels
{
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Text;
using System.Threading;
using System.Runtime.Serialization;
using System.ServiceModel.Diagnostics;
class TcpChannelFactory : ConnectionOrientedTransportChannelFactory,
ITcpChannelFactorySettings
{
static TcpConnectionPoolRegistry connectionPoolRegistry = new TcpConnectionPoolRegistry();
TimeSpan leaseTimeout;
public TcpChannelFactory(TcpTransportBindingElement bindingElement, BindingContext context)
: base(bindingElement, context,
bindingElement.ConnectionPoolSettings.GroupName,
bindingElement.ConnectionPoolSettings.IdleTimeout,
bindingElement.ConnectionPoolSettings.MaxOutboundConnectionsPerEndpoint)
{
this.leaseTimeout = bindingElement.ConnectionPoolSettings.LeaseTimeout;
}
public TimeSpan LeaseTimeout
{
get
{
return leaseTimeout;
}
}
public override string Scheme
{
get { return Uri.UriSchemeNetTcp; }
}
internal override IConnectionInitiator GetConnectionInitiator()
{
IConnectionInitiator socketConnectionInitiator = new SocketConnectionInitiator(
ConnectionBufferSize);
#if CONNECTIONDUMP
socketConnectionInitiator = new ConnectionDumpInitiator(socketConnectionInitiator);
#endif
return new BufferedConnectionInitiator(socketConnectionInitiator,
MaxOutputDelay, ConnectionBufferSize);
}
internal override ConnectionPool GetConnectionPool()
{
return connectionPoolRegistry.Lookup(this);
}
internal override void ReleaseConnectionPool(ConnectionPool pool, TimeSpan timeout)
{
connectionPoolRegistry.Release(pool, timeout);
}
}
}
// 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
- WindowsGraphics2.cs
- WebHeaderCollection.cs
- SettingsSection.cs
- HttpCapabilitiesEvaluator.cs
- CompositeKey.cs
- SoapAttributeOverrides.cs
- DataTemplateKey.cs
- WebPartChrome.cs
- Latin1Encoding.cs
- FileChangesMonitor.cs
- UnauthorizedAccessException.cs
- ClassDataContract.cs
- TreeViewItem.cs
- AdjustableArrowCap.cs
- WaitHandleCannotBeOpenedException.cs
- APCustomTypeDescriptor.cs
- SchemaObjectWriter.cs
- NumberFormatInfo.cs
- ControlBuilder.cs
- HttpHandlersInstallComponent.cs
- SemaphoreSlim.cs
- EntityObject.cs
- Evaluator.cs
- DataGridViewColumnHeaderCell.cs
- KeyPressEvent.cs
- PublisherMembershipCondition.cs
- DebugHandleTracker.cs
- DbTransaction.cs
- MatrixConverter.cs
- AvTrace.cs
- util.cs
- JpegBitmapDecoder.cs
- XmlMembersMapping.cs
- TableCellCollection.cs
- DataSourceControlBuilder.cs
- TableRow.cs
- XsdDataContractExporter.cs
- WebErrorHandler.cs
- DrawListViewSubItemEventArgs.cs
- RegexWriter.cs
- ClientConfigPaths.cs
- TraceEventCache.cs
- SqlRowUpdatingEvent.cs
- XmlQuerySequence.cs
- Axis.cs
- ConfigViewGenerator.cs
- VerticalAlignConverter.cs
- DataViewSetting.cs
- BaseEntityWrapper.cs
- FileUpload.cs
- WebPartDisplayMode.cs
- Point3DCollectionValueSerializer.cs
- WinCategoryAttribute.cs
- WorkflowDataContext.cs
- SqlClientWrapperSmiStreamChars.cs
- ControlParameter.cs
- QueryOptionExpression.cs
- FontSizeConverter.cs
- ConditionValidator.cs
- IDictionary.cs
- PolicyStatement.cs
- MultiAsyncResult.cs
- NamedPipeProcessProtocolHandler.cs
- SymLanguageVendor.cs
- SystemUdpStatistics.cs
- DirectoryObjectSecurity.cs
- SecurityPermission.cs
- TextTreeInsertElementUndoUnit.cs
- WebRequest.cs
- FontFamilyValueSerializer.cs
- ImageSourceConverter.cs
- XmlSchemaAnnotated.cs
- WebDisplayNameAttribute.cs
- UniqueIdentifierService.cs
- AssociativeAggregationOperator.cs
- _HTTPDateParse.cs
- TextEditorLists.cs
- StylusPlugInCollection.cs
- PassportIdentity.cs
- ListView.cs
- Crc32.cs
- Or.cs
- XpsException.cs
- EventHandlerList.cs
- DetailsViewInsertedEventArgs.cs
- UTF32Encoding.cs
- CommonXSendMessage.cs
- GeneratedCodeAttribute.cs
- InstanceLockQueryResult.cs
- CodeAttributeDeclarationCollection.cs
- Visual3DCollection.cs
- RegistrySecurity.cs
- CommandID.cs
- XamlPathDataSerializer.cs
- OleDbReferenceCollection.cs
- log.cs
- InputLanguageCollection.cs
- TextDecoration.cs
- MenuItemStyle.cs
- XmlDataImplementation.cs