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
- FormClosingEvent.cs
- TableLayout.cs
- SafeRegistryHandle.cs
- CollectionBuilder.cs
- TransactionScope.cs
- FunctionParameter.cs
- GridViewUpdatedEventArgs.cs
- TraceFilter.cs
- TrustLevelCollection.cs
- Propagator.JoinPropagator.cs
- Utils.cs
- ConvertTextFrag.cs
- PartitionResolver.cs
- safelinkcollection.cs
- CodeDirectiveCollection.cs
- PerfService.cs
- ClaimComparer.cs
- AssemblyName.cs
- RecognizedWordUnit.cs
- TargetControlTypeAttribute.cs
- LogReserveAndAppendState.cs
- SqlRowUpdatingEvent.cs
- WindowsGrip.cs
- AppDomainUnloadedException.cs
- ConcurrentDictionary.cs
- MemberInfoSerializationHolder.cs
- ContainerUtilities.cs
- BitmapEffectInputConnector.cs
- MetafileHeader.cs
- StreamAsIStream.cs
- ConfigXmlWhitespace.cs
- PerformanceCounterLib.cs
- WebReferenceOptions.cs
- XmlParser.cs
- CssTextWriter.cs
- SoapFault.cs
- UncommonField.cs
- HtmlInputRadioButton.cs
- SEHException.cs
- DataGridColumnDropSeparator.cs
- InkPresenterAutomationPeer.cs
- mansign.cs
- XmlTextWriter.cs
- AutomationAttributeInfo.cs
- DocumentApplication.cs
- XmlSchemaGroupRef.cs
- _NestedMultipleAsyncResult.cs
- DbInsertCommandTree.cs
- HttpCookieCollection.cs
- ProcessProtocolHandler.cs
- ChangeNode.cs
- AppSecurityManager.cs
- ExecutionEngineException.cs
- HttpListenerContext.cs
- ObjectComplexPropertyMapping.cs
- CreateSequenceResponse.cs
- RadioButtonRenderer.cs
- Permission.cs
- ClickablePoint.cs
- Transform3DCollection.cs
- WebConfigurationHostFileChange.cs
- TextDecorationLocationValidation.cs
- Misc.cs
- PositiveTimeSpanValidatorAttribute.cs
- DataGridBoolColumn.cs
- LOSFormatter.cs
- TreeNodeCollection.cs
- DayRenderEvent.cs
- URL.cs
- HandlerWithFactory.cs
- LineSegment.cs
- AppLevelCompilationSectionCache.cs
- PersonalizationDictionary.cs
- IndentedWriter.cs
- cookie.cs
- complextypematerializer.cs
- ObservableCollection.cs
- Memoizer.cs
- ServiceObjectContainer.cs
- SchemaComplexType.cs
- DataObject.cs
- WinEventHandler.cs
- followingsibling.cs
- DBDataPermission.cs
- DrawingContextWalker.cs
- BindingSource.cs
- AppSettingsExpressionBuilder.cs
- DataErrorValidationRule.cs
- DataGridPageChangedEventArgs.cs
- VScrollProperties.cs
- PriorityChain.cs
- OperationInvokerTrace.cs
- AssertFilter.cs
- Localizer.cs
- input.cs
- ProfileManager.cs
- QueryOutputWriter.cs
- Matrix3D.cs
- RuleElement.cs
- datacache.cs