Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / RunTime / VolatileResourceManager.cs / 1305376 / VolatileResourceManager.cs
#pragma warning disable 1634, 1691 using System; using System.Diagnostics; using System.Transactions; using System.Collections; using System.Collections.Generic; using System.Workflow.Runtime.Hosting; namespace System.Workflow.Runtime { ////// Volatile Resource Manager /// internal sealed class VolatileResourceManager { // members private WorkBatchCollection _workCollection = new WorkBatchCollection(); private WorkBatch _mergedBatch = null; // constructor internal VolatileResourceManager() { } // properties internal WorkBatchCollection BatchCollection { get { return _workCollection; } } internal bool IsBatchDirty { get { IDictionaryEnumerator de = _workCollection.GetEnumerator(); while (de.MoveNext()) { WorkBatch batch = (WorkBatch)de.Value; if (batch.IsDirty) return true; } return false; } } WorkBatch GetMergedBatch() { return this._workCollection.GetMergedBatch(); } internal void Commit() { _mergedBatch = GetMergedBatch(); Transaction transaction = Transaction.Current; if (null == transaction) throw new InvalidOperationException(ExecutionStringManager.NullAmbientTransaction); // Do Commit Sequence iteration over work collection _mergedBatch.Commit(transaction); } internal void Complete() { try { _mergedBatch.Complete(true); } finally { if (_mergedBatch != null) { _mergedBatch.Dispose(); _mergedBatch = null; } if (_workCollection != null) { _workCollection.ClearSubBatches(); } } } internal void HandleFault() { // // We've failed, clear the merged batch if (_mergedBatch != null) { _mergedBatch.Dispose(); _mergedBatch = null; } // clear transient batch which holds instance state primarily if (_workCollection != null) { _workCollection.ClearTransientBatch(); } } internal void ClearAllBatchedWork() { if (_workCollection != null) _workCollection.RollbackAllBatchedWork(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. #pragma warning disable 1634, 1691 using System; using System.Diagnostics; using System.Transactions; using System.Collections; using System.Collections.Generic; using System.Workflow.Runtime.Hosting; namespace System.Workflow.Runtime { ////// Volatile Resource Manager /// internal sealed class VolatileResourceManager { // members private WorkBatchCollection _workCollection = new WorkBatchCollection(); private WorkBatch _mergedBatch = null; // constructor internal VolatileResourceManager() { } // properties internal WorkBatchCollection BatchCollection { get { return _workCollection; } } internal bool IsBatchDirty { get { IDictionaryEnumerator de = _workCollection.GetEnumerator(); while (de.MoveNext()) { WorkBatch batch = (WorkBatch)de.Value; if (batch.IsDirty) return true; } return false; } } WorkBatch GetMergedBatch() { return this._workCollection.GetMergedBatch(); } internal void Commit() { _mergedBatch = GetMergedBatch(); Transaction transaction = Transaction.Current; if (null == transaction) throw new InvalidOperationException(ExecutionStringManager.NullAmbientTransaction); // Do Commit Sequence iteration over work collection _mergedBatch.Commit(transaction); } internal void Complete() { try { _mergedBatch.Complete(true); } finally { if (_mergedBatch != null) { _mergedBatch.Dispose(); _mergedBatch = null; } if (_workCollection != null) { _workCollection.ClearSubBatches(); } } } internal void HandleFault() { // // We've failed, clear the merged batch if (_mergedBatch != null) { _mergedBatch.Dispose(); _mergedBatch = null; } // clear transient batch which holds instance state primarily if (_workCollection != null) { _workCollection.ClearTransientBatch(); } } internal void ClearAllBatchedWork() { if (_workCollection != null) _workCollection.RollbackAllBatchedWork(); } } } // 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
- TabOrder.cs
- CacheDict.cs
- CustomTypeDescriptor.cs
- FlowDocumentScrollViewerAutomationPeer.cs
- SoapObjectReader.cs
- SwitchAttribute.cs
- VersionConverter.cs
- TypeUtils.cs
- WebContext.cs
- RenderDataDrawingContext.cs
- SortedDictionary.cs
- XslCompiledTransform.cs
- ToolStripDesignerAvailabilityAttribute.cs
- Stack.cs
- Point3DCollectionConverter.cs
- ImageMap.cs
- DesignSurface.cs
- GridViewUpdatedEventArgs.cs
- LoginView.cs
- RelationshipEnd.cs
- BuildProvider.cs
- EDesignUtil.cs
- BitmapEffectDrawingContent.cs
- InternalBufferManager.cs
- Int16AnimationUsingKeyFrames.cs
- SortDescription.cs
- SmtpFailedRecipientsException.cs
- ResXResourceReader.cs
- AuthenticationService.cs
- FixedDocumentSequencePaginator.cs
- EmissiveMaterial.cs
- DefaultSection.cs
- TdsParserStaticMethods.cs
- ProcessInfo.cs
- WebSysDescriptionAttribute.cs
- InfoCardTraceRecord.cs
- Serializer.cs
- SignatureHelper.cs
- DataGridViewTextBoxColumn.cs
- ToolStripSeparator.cs
- coordinatorscratchpad.cs
- HasActivatableWorkflowEvent.cs
- VideoDrawing.cs
- FilterQuery.cs
- DataSetMappper.cs
- TaskFormBase.cs
- RelationshipEnd.cs
- ProxyManager.cs
- HttpModulesSection.cs
- HTTPNotFoundHandler.cs
- SqlDataSourceView.cs
- Rotation3DAnimation.cs
- Pair.cs
- XmlSubtreeReader.cs
- IPGlobalProperties.cs
- TemplateManager.cs
- SoapEnumAttribute.cs
- FontFamilyValueSerializer.cs
- SqlClientWrapperSmiStream.cs
- RelatedView.cs
- MonitorWrapper.cs
- CanExecuteRoutedEventArgs.cs
- XmlEnumAttribute.cs
- ClassHandlersStore.cs
- AsnEncodedData.cs
- StickyNote.cs
- SQLByte.cs
- HorizontalAlignConverter.cs
- DataObjectCopyingEventArgs.cs
- XmlSchemas.cs
- SqlBulkCopy.cs
- MetadataExchangeClient.cs
- Image.cs
- KeyNameIdentifierClause.cs
- shaperfactoryquerycacheentry.cs
- XmlSchemas.cs
- EntityDataSourceDataSelection.cs
- XmlHierarchyData.cs
- XmlCDATASection.cs
- UnsafeNativeMethods.cs
- ReferencedCollectionType.cs
- XmlDocumentFragment.cs
- CookielessHelper.cs
- controlskin.cs
- WindowsSysHeader.cs
- StorageMappingFragment.cs
- EntityDataSourceEntityTypeFilterConverter.cs
- ApplicationProxyInternal.cs
- Panel.cs
- AvtEvent.cs
- LOSFormatter.cs
- KernelTypeValidation.cs
- RuleEngine.cs
- Opcode.cs
- WebPartPersonalization.cs
- XmlValidatingReader.cs
- RoleServiceManager.cs
- ProjectionPruner.cs
- unitconverter.cs
- CommandHelpers.cs