Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx35 / System.WorkflowServices / System / ServiceModel / Dispatcher / DurableRuntimeValidator.cs / 1305376 / DurableRuntimeValidator.cs
//------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------- namespace System.ServiceModel.Dispatcher { using System.ServiceModel.Description; using System.Workflow.Runtime; using System.Runtime; class DurableRuntimeValidator { ConcurrencyMode concurrencyMode; UnknownExceptionAction exceptionAction; bool saveStateInOperationTransaction; bool validated; public DurableRuntimeValidator(bool saveStateInOperationTransaction, UnknownExceptionAction exceptionAction) { this.saveStateInOperationTransaction = saveStateInOperationTransaction; this.exceptionAction = exceptionAction; this.validated = false; } public ConcurrencyMode ConcurrencyMode { get { if (!this.validated) { ValidateRuntime(); } return concurrencyMode; } } public void ValidateRuntime() { if (!this.validated) { Fx.Assert( OperationContext.Current != null && OperationContext.Current.EndpointDispatcher != null && OperationContext.Current.EndpointDispatcher.DispatchRuntime != null, "There shouldn't have been a null value in " + "OperationContext.Current.EndpointDispatcher.DispatchRuntime."); this.concurrencyMode = OperationContext.Current.EndpointDispatcher.DispatchRuntime.ConcurrencyMode; if (this.concurrencyMode == ConcurrencyMode.Multiple) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError( new InvalidOperationException( SR2.GetString(SR2.ConcurrencyMultipleNotSupported))); } if (this.saveStateInOperationTransaction && this.concurrencyMode != ConcurrencyMode.Single) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError( new InvalidOperationException( SR2.GetString(SR2.SaveStateInTransactionRequiresSingle))); } if (this.concurrencyMode == ConcurrencyMode.Reentrant && this.exceptionAction == UnknownExceptionAction.AbortInstance) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError( new InvalidOperationException( SR2.GetString(SR2.ConcurrencyReentrantAndAbortNotSupported))); } this.validated = true; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- OutputScopeManager.cs
- RootAction.cs
- HtmlSelect.cs
- SEHException.cs
- PostBackTrigger.cs
- MethodToken.cs
- AdornerHitTestResult.cs
- UITypeEditor.cs
- ArgumentException.cs
- Input.cs
- BuildProviderAppliesToAttribute.cs
- RepeatButtonAutomationPeer.cs
- Ray3DHitTestResult.cs
- DrawListViewItemEventArgs.cs
- TranslateTransform3D.cs
- WaitHandle.cs
- AutoGeneratedField.cs
- glyphs.cs
- DataBoundControlDesigner.cs
- BrushMappingModeValidation.cs
- WorkflowServiceHostFactory.cs
- MultiAsyncResult.cs
- RequestResizeEvent.cs
- RequestSecurityTokenResponse.cs
- DataGridViewColumnDividerDoubleClickEventArgs.cs
- FileDataSourceCache.cs
- RequestCachingSection.cs
- HtmlToClrEventProxy.cs
- XamlSerializerUtil.cs
- OperationCanceledException.cs
- AuthStoreRoleProvider.cs
- CollectionCodeDomSerializer.cs
- PointLight.cs
- PageThemeBuildProvider.cs
- TryCatchDesigner.xaml.cs
- ReaderWriterLock.cs
- FileRecordSequence.cs
- Point3DAnimation.cs
- PrivateUnsafeNativeCompoundFileMethods.cs
- FontFamilyConverter.cs
- AccessDataSourceView.cs
- AlphabeticalEnumConverter.cs
- BrowserDefinition.cs
- GenericsInstances.cs
- InputProcessorProfiles.cs
- SpinWait.cs
- StoreContentChangedEventArgs.cs
- SmuggledIUnknown.cs
- ResXFileRef.cs
- RadioButtonAutomationPeer.cs
- OLEDB_Util.cs
- HttpServerVarsCollection.cs
- EmptyReadOnlyDictionaryInternal.cs
- DataGridViewRowPrePaintEventArgs.cs
- UrlMapping.cs
- validation.cs
- FixedPosition.cs
- ClientBuildManagerCallback.cs
- NullReferenceException.cs
- Query.cs
- AttributeEmitter.cs
- LinqDataSourceInsertEventArgs.cs
- UIServiceHelper.cs
- CurrencyManager.cs
- WindowsImpersonationContext.cs
- ListenerAdapterBase.cs
- RequestSecurityToken.cs
- TransformConverter.cs
- DbConnectionClosed.cs
- Variant.cs
- DriveNotFoundException.cs
- SoapCodeExporter.cs
- FindCriteriaElement.cs
- ObjectViewQueryResultData.cs
- ApplicationActivator.cs
- MetadataCollection.cs
- xdrvalidator.cs
- Configuration.cs
- ExponentialEase.cs
- CompilationRelaxations.cs
- _SslState.cs
- EntityDataSourceDataSelection.cs
- KeyEvent.cs
- GridToolTip.cs
- _SSPIWrapper.cs
- QualifiedCellIdBoolean.cs
- GradientStop.cs
- AddInPipelineAttributes.cs
- CatalogZoneBase.cs
- ColumnResult.cs
- MatrixTransform.cs
- AnnotationComponentManager.cs
- TiffBitmapEncoder.cs
- ConfigurationSettings.cs
- StringDictionaryWithComparer.cs
- CellParagraph.cs
- PathGeometry.cs
- TextRangeAdaptor.cs
- TargetControlTypeCache.cs
- ConsumerConnectionPointCollection.cs