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
- AdornerLayer.cs
- SAPICategories.cs
- RSAOAEPKeyExchangeDeformatter.cs
- XmlSecureResolver.cs
- HtmlSelect.cs
- NameValueSectionHandler.cs
- DrawingAttributesDefaultValueFactory.cs
- HttpRuntimeSection.cs
- DependencyObjectPropertyDescriptor.cs
- Rotation3D.cs
- MergablePropertyAttribute.cs
- SwitchAttribute.cs
- TTSEngineProxy.cs
- SqlClientWrapperSmiStreamChars.cs
- BitmapEffectrendercontext.cs
- CachedRequestParams.cs
- DescriptionAttribute.cs
- EnvelopedSignatureTransform.cs
- NetCodeGroup.cs
- BaseValidator.cs
- HttpContextServiceHost.cs
- SpecularMaterial.cs
- versioninfo.cs
- Token.cs
- ConditionalAttribute.cs
- JsonQueryStringConverter.cs
- DbConnectionInternal.cs
- BitArray.cs
- SystemIPInterfaceStatistics.cs
- CodeMemberEvent.cs
- PenLineJoinValidation.cs
- ConnectionStringsExpressionBuilder.cs
- Int16.cs
- EditorPartChrome.cs
- ServiceRoute.cs
- MenuAdapter.cs
- ProcessInfo.cs
- NamespaceInfo.cs
- CodeGotoStatement.cs
- HopperCache.cs
- DocumentViewerAutomationPeer.cs
- UrlMappingsSection.cs
- IDQuery.cs
- HttpCookieCollection.cs
- Interlocked.cs
- ToolStripItemEventArgs.cs
- ReadOnlyTernaryTree.cs
- ExpressionPrefixAttribute.cs
- CompiledIdentityConstraint.cs
- ItemChangedEventArgs.cs
- CodeConstructor.cs
- CanExecuteRoutedEventArgs.cs
- GroupBox.cs
- IResourceProvider.cs
- SerializerProvider.cs
- xmlformatgeneratorstatics.cs
- LeftCellWrapper.cs
- XmlWhitespace.cs
- Activator.cs
- TemplateEditingService.cs
- ClickablePoint.cs
- DependencyPropertyChangedEventArgs.cs
- XPathNodeHelper.cs
- ReadOnlyPermissionSet.cs
- OciEnlistContext.cs
- LinkClickEvent.cs
- ContentAlignmentEditor.cs
- DataGridViewCell.cs
- DataIdProcessor.cs
- BookmarkScopeManager.cs
- OperationDescription.cs
- Base64Stream.cs
- DataGridLinkButton.cs
- QuaternionKeyFrameCollection.cs
- StretchValidation.cs
- CharStorage.cs
- XmlSchemaDatatype.cs
- ContractInstanceProvider.cs
- BitmapMetadata.cs
- WindowsClientCredential.cs
- FamilyMap.cs
- CounterSample.cs
- Win32Exception.cs
- CachedPathData.cs
- JsonQNameDataContract.cs
- ContextMenuAutomationPeer.cs
- SecurityElementBase.cs
- IResourceProvider.cs
- AdRotatorDesigner.cs
- FakeModelItemImpl.cs
- BufferedGraphicsContext.cs
- XmlSchemaProviderAttribute.cs
- InstanceDataCollection.cs
- IndependentlyAnimatedPropertyMetadata.cs
- Vector3DCollection.cs
- DirectionalLight.cs
- RelatedView.cs
- SuppressMergeCheckAttribute.cs
- WindowsAuthenticationModule.cs
- EventHandlerService.cs