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
- FolderBrowserDialogDesigner.cs
- WebAdminConfigurationHelper.cs
- XmlElementAttributes.cs
- ColorMap.cs
- PlatformCulture.cs
- LayoutTable.cs
- ExceptionUtil.cs
- PaintEvent.cs
- Attributes.cs
- WebPartUtil.cs
- ModelItemCollection.cs
- PrimitiveOperationFormatter.cs
- AdCreatedEventArgs.cs
- PeerApplicationLaunchInfo.cs
- SettingsSavedEventArgs.cs
- ISAPIWorkerRequest.cs
- BindingMemberInfo.cs
- MailAddressCollection.cs
- NullableConverter.cs
- IntranetCredentialPolicy.cs
- MetaForeignKeyColumn.cs
- RelationshipType.cs
- WindowsIPAddress.cs
- VScrollBar.cs
- FileLevelControlBuilderAttribute.cs
- Expressions.cs
- AbsoluteQuery.cs
- SoapFaultCodes.cs
- OpenFileDialog.cs
- DeferredElementTreeState.cs
- CultureInfo.cs
- AggregationMinMaxHelpers.cs
- Typeface.cs
- Label.cs
- InputElement.cs
- ObjectDataProvider.cs
- StringWriter.cs
- AppDomainUnloadedException.cs
- WizardPanel.cs
- path.cs
- HttpResponseHeader.cs
- coordinator.cs
- StatusStrip.cs
- StylusPlugin.cs
- GridViewDeletedEventArgs.cs
- BinaryEditor.cs
- HashCryptoHandle.cs
- TrackPointCollection.cs
- ScriptingJsonSerializationSection.cs
- SqlReferenceCollection.cs
- DecimalStorage.cs
- DocumentSchemaValidator.cs
- PartitionResolver.cs
- MessageParameterAttribute.cs
- AsyncPostBackErrorEventArgs.cs
- GlyphCache.cs
- _SSPISessionCache.cs
- ObjectStateManagerMetadata.cs
- DynamicILGenerator.cs
- GridViewRowEventArgs.cs
- AttributeSetAction.cs
- View.cs
- ProxyHelper.cs
- TypeSystemHelpers.cs
- SByteStorage.cs
- SqlDataRecord.cs
- GridViewItemAutomationPeer.cs
- InstanceDescriptor.cs
- XmlSchemaAttributeGroup.cs
- FrameworkRichTextComposition.cs
- NodeLabelEditEvent.cs
- IMembershipProvider.cs
- AnnotationStore.cs
- DbDeleteCommandTree.cs
- WinEventHandler.cs
- TypeLibConverter.cs
- SignedInfo.cs
- SymbolResolver.cs
- UidManager.cs
- SemanticBasicElement.cs
- ScrollEvent.cs
- WebBrowser.cs
- DesignerAutoFormat.cs
- EventMappingSettingsCollection.cs
- VariantWrapper.cs
- ChooseAction.cs
- WebPartsPersonalizationAuthorization.cs
- EntityDescriptor.cs
- _Rfc2616CacheValidators.cs
- Enumerable.cs
- Thread.cs
- SpeechRecognitionEngine.cs
- FileDialogPermission.cs
- MetadataCache.cs
- EditBehavior.cs
- ReadWriteSpinLock.cs
- UserMapPath.cs
- SpoolingTask.cs
- oledbconnectionstring.cs
- WindowVisualStateTracker.cs