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
- ColumnMapVisitor.cs
- HttpModuleCollection.cs
- SvcMapFileSerializer.cs
- BuiltInExpr.cs
- GenericRootAutomationPeer.cs
- MarkupExtensionParser.cs
- NGCSerializationManagerAsync.cs
- StrongName.cs
- ObjectStateEntryDbUpdatableDataRecord.cs
- ScaleTransform.cs
- StylusButton.cs
- Int64Storage.cs
- Context.cs
- FontFamily.cs
- NamespaceCollection.cs
- XmlObjectSerializerWriteContext.cs
- ListViewInsertionMark.cs
- Parameter.cs
- ItemCheckedEvent.cs
- CompileXomlTask.cs
- DispatcherFrame.cs
- QueryCacheEntry.cs
- SourceLocationProvider.cs
- DataGridViewCellStyleChangedEventArgs.cs
- TranslateTransform.cs
- Block.cs
- AssociationProvider.cs
- TypeInitializationException.cs
- Run.cs
- _IPv4Address.cs
- XmlDataCollection.cs
- CachedBitmap.cs
- SystemResources.cs
- AnnouncementSendsAsyncResult.cs
- SmiRecordBuffer.cs
- CssClassPropertyAttribute.cs
- LinkClickEvent.cs
- DateTimeOffset.cs
- MemoryFailPoint.cs
- ServiceEndpointElement.cs
- indexingfiltermarshaler.cs
- AutomationElement.cs
- QueryableFilterRepeater.cs
- DeploymentExceptionMapper.cs
- HMACSHA512.cs
- NullReferenceException.cs
- Int64.cs
- UpdatePanel.cs
- HttpRequest.cs
- RulePatternOps.cs
- XmlLanguageConverter.cs
- SqlBulkCopyColumnMappingCollection.cs
- FunctionDetailsReader.cs
- HttpDateParse.cs
- FileNotFoundException.cs
- DataStreams.cs
- DbMetaDataFactory.cs
- PatternMatcher.cs
- MessageSecurityOverHttp.cs
- VerbConverter.cs
- KeyTime.cs
- ItemDragEvent.cs
- DecoderFallbackWithFailureFlag.cs
- MatrixConverter.cs
- HtmlInputFile.cs
- ContentPlaceHolder.cs
- OleDbPropertySetGuid.cs
- DoubleIndependentAnimationStorage.cs
- CompressStream.cs
- SystemIcmpV6Statistics.cs
- MemberRelationshipService.cs
- CannotUnloadAppDomainException.cs
- _BasicClient.cs
- ContextInformation.cs
- SessionStateUtil.cs
- RadialGradientBrush.cs
- TypeDescriptionProvider.cs
- Viewport3DVisual.cs
- PartialList.cs
- contentDescriptor.cs
- FilteredAttributeCollection.cs
- Int32.cs
- OrderPreservingPipeliningSpoolingTask.cs
- FileEnumerator.cs
- CalendarDateRange.cs
- ScalarType.cs
- VirtualPathData.cs
- IPAddress.cs
- ToolStripPanel.cs
- NetworkInformationPermission.cs
- TextEditorLists.cs
- WebProxyScriptElement.cs
- XmlSchemaType.cs
- ProcessingInstructionAction.cs
- TargetParameterCountException.cs
- CompilerGlobalScopeAttribute.cs
- ApplicationException.cs
- SqlDataSourceSelectingEventArgs.cs
- ObjectManager.cs
- TextElementCollectionHelper.cs