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
- OleTxTransaction.cs
- InvokeProviderWrapper.cs
- SqlComparer.cs
- XmlFormatExtensionPointAttribute.cs
- X509ServiceCertificateAuthenticationElement.cs
- StateInitialization.cs
- Light.cs
- ExtendedPropertyDescriptor.cs
- DbUpdateCommandTree.cs
- StringFunctions.cs
- WmlSelectionListAdapter.cs
- XPathParser.cs
- ArgumentNullException.cs
- DefaultTextStoreTextComposition.cs
- DataGridViewCellEventArgs.cs
- FileRegion.cs
- Util.cs
- PartBasedPackageProperties.cs
- SizeAnimationClockResource.cs
- LabelEditEvent.cs
- _ListenerRequestStream.cs
- MimeTextImporter.cs
- SecureStringHasher.cs
- TextEmbeddedObject.cs
- MetadataProperty.cs
- MarkupCompilePass2.cs
- DelegateArgumentReference.cs
- XmlSchemaSimpleTypeList.cs
- _LocalDataStoreMgr.cs
- ButtonBaseAutomationPeer.cs
- TextRunTypographyProperties.cs
- QueryParameter.cs
- ScaleTransform3D.cs
- TreeNodeCollectionEditorDialog.cs
- BuildManager.cs
- SHA384.cs
- XmlValidatingReaderImpl.cs
- ImmutablePropertyDescriptorGridEntry.cs
- CollectionMarkupSerializer.cs
- shaperfactoryquerycachekey.cs
- GridItemProviderWrapper.cs
- EventToken.cs
- AsyncPostBackErrorEventArgs.cs
- ClientRuntimeConfig.cs
- DataViewManager.cs
- BamlBinaryReader.cs
- DragDrop.cs
- UIElementParagraph.cs
- StyleBamlTreeBuilder.cs
- CheckBoxAutomationPeer.cs
- AdornedElementPlaceholder.cs
- OutputCacheSettingsSection.cs
- GlobalAclOperationRequirement.cs
- Descriptor.cs
- ScriptReferenceEventArgs.cs
- SecurityKeyType.cs
- File.cs
- RC2.cs
- XmlSerializerOperationGenerator.cs
- CodeIdentifiers.cs
- ErrorBehavior.cs
- DataGridViewSortCompareEventArgs.cs
- CommentEmitter.cs
- SqlFunctionAttribute.cs
- ParserStack.cs
- ProxyBuilder.cs
- UnsafeNativeMethods.cs
- DataGridViewCellStyleConverter.cs
- WebAdminConfigurationHelper.cs
- DataTrigger.cs
- XmlSchemaObjectCollection.cs
- TextEditorMouse.cs
- SettingsSection.cs
- TlsnegoTokenAuthenticator.cs
- GlobalDataBindingHandler.cs
- DoubleCollectionValueSerializer.cs
- ValidateNames.cs
- TextEditorSpelling.cs
- CommonObjectSecurity.cs
- TypeGenericEnumerableViewSchema.cs
- WebEventTraceProvider.cs
- WebDescriptionAttribute.cs
- DropDownList.cs
- ObjectItemCollection.cs
- ClipboardData.cs
- CommonProperties.cs
- IsolatedStorageException.cs
- SecurityHeaderTokenResolver.cs
- SystemDiagnosticsSection.cs
- XmlSchemaAnnotated.cs
- EdmSchemaAttribute.cs
- DragDropHelper.cs
- ClientUtils.cs
- FrameworkContentElement.cs
- TypeUnloadedException.cs
- TriggerAction.cs
- BindingMAnagerBase.cs
- CounterCreationDataConverter.cs
- FormViewDesigner.cs
- AssemblyNameProxy.cs