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

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- StructureChangedEventArgs.cs
- BoundColumn.cs
- httpserverutility.cs
- _OverlappedAsyncResult.cs
- FontUnitConverter.cs
- ZipIOExtraField.cs
- PropertyCollection.cs
- filewebresponse.cs
- COM2EnumConverter.cs
- InvalidOperationException.cs
- RegionInfo.cs
- TypeToken.cs
- MsmqChannelListenerBase.cs
- ViewBox.cs
- OdbcConnection.cs
- BinaryNode.cs
- StrongNameMembershipCondition.cs
- DataGridViewUtilities.cs
- DataObjectPastingEventArgs.cs
- Misc.cs
- VisualStateManager.cs
- NativeMethods.cs
- ImageIndexConverter.cs
- UInt16.cs
- IndependentAnimationStorage.cs
- SafeFileMappingHandle.cs
- ContainerSelectorGlyph.cs
- SHA512.cs
- AnnotationMap.cs
- WindowsClaimSet.cs
- SecurityIdentifierElement.cs
- FixedTextSelectionProcessor.cs
- ExpressionWriter.cs
- SettingsPropertyValueCollection.cs
- ContextMenuStripGroupCollection.cs
- SingleObjectCollection.cs
- CaseInsensitiveHashCodeProvider.cs
- WebPartConnectionsDisconnectVerb.cs
- ExternalException.cs
- SqlDuplicator.cs
- LocalizabilityAttribute.cs
- XmlAnyElementAttributes.cs
- FontFamily.cs
- X509Extension.cs
- ExportFileRequest.cs
- LocationFactory.cs
- ColorDialog.cs
- BStrWrapper.cs
- DoubleKeyFrameCollection.cs
- SchemaCollectionCompiler.cs
- SqlDataSourceRefreshSchemaForm.cs
- SafeArrayRankMismatchException.cs
- TdsParser.cs
- CompilerErrorCollection.cs
- DataGridViewLinkColumn.cs
- RoleServiceManager.cs
- ClientBuildManager.cs
- BulletDecorator.cs
- XmlSignatureProperties.cs
- __FastResourceComparer.cs
- Constants.cs
- CodeDirectiveCollection.cs
- RealProxy.cs
- EventLogTraceListener.cs
- ExitEventArgs.cs
- StringInfo.cs
- BroadcastEventHelper.cs
- MetaType.cs
- EntityDataSourceEntitySetNameItem.cs
- OdbcPermission.cs
- IdentityReference.cs
- CodeBinaryOperatorExpression.cs
- TextRunTypographyProperties.cs
- ExpressionBuilder.cs
- AsymmetricSignatureDeformatter.cs
- SqlVersion.cs
- AssemblyHelper.cs
- Splitter.cs
- EventItfInfo.cs
- NextPreviousPagerField.cs
- ProtocolInformationReader.cs
- ToolStripRenderEventArgs.cs
- WindowExtensionMethods.cs
- SecurityCriticalDataForSet.cs
- SqlConnectionStringBuilder.cs
- PersistenceTypeAttribute.cs
- QuaternionRotation3D.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- Switch.cs
- SqlCachedBuffer.cs
- QueryOperatorEnumerator.cs
- RTLAwareMessageBox.cs
- Models.cs
- Button.cs
- StreamGeometry.cs
- InternalEnumValidatorAttribute.cs
- Int32Converter.cs
- Validator.cs
- MimeReturn.cs
- RootDesignerSerializerAttribute.cs