Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Channels / ChannelBase.cs / 1 / ChannelBase.cs
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------
namespace System.ServiceModel.Channels
{
using System.Diagnostics;
using System.ServiceModel;
using System.ServiceModel.Diagnostics;
public abstract class ChannelBase : CommunicationObject, IChannel, IDefaultCommunicationTimeouts
{
ChannelManagerBase channelManager;
protected ChannelBase(ChannelManagerBase channelManager)
{
if (channelManager == null)
{
throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("channelManager");
}
this.channelManager = channelManager;
if (DiagnosticUtility.ShouldTraceVerbose)
{
DiagnosticUtility.DiagnosticTrace.TraceEvent(TraceEventType.Verbose, TraceCode.ChannelCreated,
SR.GetString(SR.TraceCodeChannelCreated, DiagnosticTrace.CreateSourceString(this)),
null, null, this);
}
}
TimeSpan IDefaultCommunicationTimeouts.CloseTimeout
{
get { return this.DefaultCloseTimeout; }
}
TimeSpan IDefaultCommunicationTimeouts.OpenTimeout
{
get { return this.DefaultOpenTimeout; }
}
TimeSpan IDefaultCommunicationTimeouts.ReceiveTimeout
{
get { return this.DefaultReceiveTimeout; }
}
TimeSpan IDefaultCommunicationTimeouts.SendTimeout
{
get { return this.DefaultSendTimeout; }
}
protected override TimeSpan DefaultCloseTimeout
{
get { return ((IDefaultCommunicationTimeouts)this.channelManager).CloseTimeout; }
}
protected override TimeSpan DefaultOpenTimeout
{
get { return ((IDefaultCommunicationTimeouts)this.channelManager).OpenTimeout; }
}
protected TimeSpan DefaultReceiveTimeout
{
get { return ((IDefaultCommunicationTimeouts)this.channelManager).ReceiveTimeout; }
}
protected TimeSpan DefaultSendTimeout
{
get { return ((IDefaultCommunicationTimeouts)this.channelManager).SendTimeout; }
}
protected ChannelManagerBase Manager
{
get
{
return channelManager;
}
}
public virtual T GetProperty() where T : class
{
IChannelFactory factory = this.channelManager as IChannelFactory;
if (factory != null)
{
return factory.GetProperty();
}
IChannelListener listener = this.channelManager as IChannelListener;
if (listener != null)
{
return listener.GetProperty();
}
return null;
}
protected override void OnClosed()
{
base.OnClosed();
if (DiagnosticUtility.ShouldTraceVerbose)
{
DiagnosticUtility.DiagnosticTrace.TraceEvent(TraceEventType.Verbose, TraceCode.ChannelDisposed,
SR.GetString(SR.TraceCodeChannelDisposed, DiagnosticTrace.CreateSourceString(this)),
null, null, this);
}
}
}
}
// 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
- XmlSignatureProperties.cs
- BrowserCapabilitiesCodeGenerator.cs
- InputProcessorProfilesLoader.cs
- SqlGatherConsumedAliases.cs
- FontFamily.cs
- FontNamesConverter.cs
- ColorTransformHelper.cs
- Errors.cs
- Deserializer.cs
- PngBitmapDecoder.cs
- SpecialNameAttribute.cs
- Tool.cs
- HatchBrush.cs
- PropertyConverter.cs
- AssemblyInfo.cs
- SafeBuffer.cs
- CellTreeNode.cs
- XmlNodeChangedEventArgs.cs
- AnnotationResource.cs
- DataGridTablesFactory.cs
- Journaling.cs
- ListSourceHelper.cs
- RuntimeCompatibilityAttribute.cs
- MdiWindowListStrip.cs
- MsmqPoisonMessageException.cs
- AssemblyAssociatedContentFileAttribute.cs
- SerializationInfo.cs
- XmlSchemaSimpleTypeUnion.cs
- DataGridViewColumn.cs
- AnnotationHighlightLayer.cs
- IResourceProvider.cs
- GridProviderWrapper.cs
- EventSourceCreationData.cs
- StaticContext.cs
- SecureEnvironment.cs
- OdbcConnectionHandle.cs
- RouteItem.cs
- CryptoConfig.cs
- IntersectQueryOperator.cs
- AccessDataSource.cs
- remotingproxy.cs
- Encoding.cs
- ValueTable.cs
- SEHException.cs
- PropertySourceInfo.cs
- DoWhile.cs
- DataGridPageChangedEventArgs.cs
- SqlConnection.cs
- DataGridSortCommandEventArgs.cs
- Matrix3DValueSerializer.cs
- ControlPaint.cs
- CodeObjectCreateExpression.cs
- GroupStyle.cs
- ProfileSettingsCollection.cs
- HyperLinkField.cs
- CurrencyWrapper.cs
- ScriptBehaviorDescriptor.cs
- DescendentsWalkerBase.cs
- EventProviderTraceListener.cs
- DataControlImageButton.cs
- Process.cs
- DrawingGroup.cs
- TextTreeFixupNode.cs
- WebBrowserHelper.cs
- SingleAnimation.cs
- SamlAuthorizationDecisionStatement.cs
- DataGridViewSelectedColumnCollection.cs
- QilSortKey.cs
- RequestTimeoutManager.cs
- cookiecollection.cs
- ProfileSettingsCollection.cs
- ProvidersHelper.cs
- listitem.cs
- UrlAuthFailedErrorFormatter.cs
- CustomErrorCollection.cs
- DocumentViewerHelper.cs
- ItemContainerGenerator.cs
- DataMemberFieldEditor.cs
- LockedAssemblyCache.cs
- ComplexPropertyEntry.cs
- ScopeCompiler.cs
- FileAuthorizationModule.cs
- DoubleConverter.cs
- CopyOfAction.cs
- DataBoundControlHelper.cs
- CodeSnippetExpression.cs
- NameTable.cs
- SoapEnumAttribute.cs
- CompressStream.cs
- WizardPanelChangingEventArgs.cs
- AttributeEmitter.cs
- BindingCollection.cs
- ContentIterators.cs
- DbMetaDataCollectionNames.cs
- SetIterators.cs
- CurrencyWrapper.cs
- Evidence.cs
- SolidColorBrush.cs
- StylusTip.cs
- RoutedEventHandlerInfo.cs