Code:
/ WCF / WCF / 3.5.30729.1 / untmp / Orcas / SP / ndp / cdf / src / WCF / ServiceModel / System / ServiceModel / Dispatcher / IInstanceContextProvider.cs / 1 / IInstanceContextProvider.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.ServiceModel.Dispatcher { using System; using System.ServiceModel; using System.ServiceModel.Channels; public interface IInstanceContextProvider { InstanceContext GetExistingInstanceContext(Message message, IContextChannel channel); void InitializeInstanceContext(InstanceContext instanceContext, Message message, IContextChannel channel); bool IsIdle(InstanceContext instanceContext); void NotifyIdle(InstanceContextIdleCallback callback, InstanceContext instanceContext); } internal abstract class InstanceContextProviderBase : IInstanceContextProvider { DispatchRuntime dispatchRuntime; public DispatchRuntime DispatchRuntime { get { return this.dispatchRuntime; } } internal InstanceContextProviderBase(DispatchRuntime dispatchRuntime) { this.dispatchRuntime = dispatchRuntime; } internal static bool IsProviderSingleton(IInstanceContextProvider provider) { return (provider is SingletonInstanceContextProvider); } internal static bool IsProviderSessionful(IInstanceContextProvider provider) { return (provider is PerSessionInstanceContextProvider); } internal static IInstanceContextProvider GetProviderForMode(InstanceContextMode instanceMode, DispatchRuntime runtime) { switch (instanceMode) { case InstanceContextMode.PerCall: return new PerCallInstanceContextProvider(runtime); case InstanceContextMode.PerSession: return new PerSessionInstanceContextProvider(runtime); case InstanceContextMode.Single: return new SingletonInstanceContextProvider(runtime); default: DiagnosticUtility.FailFast("InstanceContextProviderBase.GetProviderForMode: default"); return null; } } internal static bool IsProviderPerCall(IInstanceContextProvider provider) { return (provider is PerCallInstanceContextProvider); } internal ServiceChannel GetServiceChannelFromProxy(IContextChannel channel) { ServiceChannel serviceChannel = channel as ServiceChannel; if (serviceChannel == null) { serviceChannel = ServiceChannelFactory.GetServiceChannel(channel); } return serviceChannel; } #region IInstanceContextProvider Members public virtual InstanceContext GetExistingInstanceContext(Message message, IContextChannel channel) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new NotImplementedException()); } public virtual void InitializeInstanceContext(InstanceContext instanceContext, Message message, IContextChannel channel) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new NotImplementedException()); } public virtual bool IsIdle(InstanceContext instanceContext) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new NotImplementedException()); } public virtual void NotifyIdle(InstanceContextIdleCallback callback, InstanceContext instanceContext) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new NotImplementedException()); } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
![Network programming in C#, Network Programming in VB.NET, Network Programming in .NET](/images/book.jpg)
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SiteMap.cs
- SecurityNegotiationException.cs
- XmlSecureResolver.cs
- DBSqlParserColumn.cs
- ContentPlaceHolder.cs
- UnsafeNativeMethodsPenimc.cs
- AssociationTypeEmitter.cs
- AutomationProperties.cs
- EncryptedKey.cs
- QueryOutputWriter.cs
- CustomAttributeFormatException.cs
- Lock.cs
- StackSpiller.cs
- ClientFormsIdentity.cs
- ValueUnavailableException.cs
- Operand.cs
- BatchStream.cs
- WorkflowRuntimeServiceElement.cs
- TimeSpanStorage.cs
- EndpointDesigner.cs
- BaseCodeDomTreeGenerator.cs
- DoubleKeyFrameCollection.cs
- BigInt.cs
- FlowDocument.cs
- WindowsNonControl.cs
- SubMenuStyle.cs
- CopyAction.cs
- MimePart.cs
- EastAsianLunisolarCalendar.cs
- DataSourceControlBuilder.cs
- HandlerBase.cs
- KernelTypeValidation.cs
- DropTarget.cs
- ControlEvent.cs
- COM2AboutBoxPropertyDescriptor.cs
- CellLabel.cs
- GridViewColumn.cs
- SecurityTokenProvider.cs
- EmbeddedMailObjectsCollection.cs
- Icon.cs
- VirtualPathProvider.cs
- Serialization.cs
- IOThreadScheduler.cs
- LinearQuaternionKeyFrame.cs
- HTTPNotFoundHandler.cs
- SymmetricSecurityProtocolFactory.cs
- ButtonBase.cs
- TypedServiceOperationListItem.cs
- WinFormsUtils.cs
- ColorComboBox.cs
- DataGridLinkButton.cs
- TreeNodeStyleCollection.cs
- NonVisualControlAttribute.cs
- SqlUDTStorage.cs
- SqlCacheDependencySection.cs
- Dynamic.cs
- WebPartTransformer.cs
- Columns.cs
- SAPICategories.cs
- GeometryGroup.cs
- WSSecurityPolicy12.cs
- GcHandle.cs
- MemoryRecordBuffer.cs
- MultiPageTextView.cs
- XmlName.cs
- FixedSOMTableRow.cs
- AppearanceEditorPart.cs
- ExpressionWriter.cs
- MultiBinding.cs
- NativeMethods.cs
- SynchronizationContext.cs
- InitializerFacet.cs
- MethodCallExpression.cs
- EntityClassGenerator.cs
- CodeTypeOfExpression.cs
- RelationshipConverter.cs
- WebPartConnectionCollection.cs
- ProviderCommandInfoUtils.cs
- APCustomTypeDescriptor.cs
- FileDialogCustomPlacesCollection.cs
- SqlDataReader.cs
- ArraySortHelper.cs
- WindowsAltTab.cs
- ScrollBar.cs
- BatchStream.cs
- DataGridViewElement.cs
- InvokeWebServiceDesigner.cs
- PnrpPermission.cs
- XsltOutput.cs
- DataSourceHelper.cs
- LineSegment.cs
- ToolStripItemClickedEventArgs.cs
- ViewSimplifier.cs
- _LocalDataStoreMgr.cs
- LineVisual.cs
- DataGridViewHitTestInfo.cs
- CodeTypeOfExpression.cs
- ModifierKeysConverter.cs
- securitymgrsite.cs
- PersonalizableAttribute.cs