Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / RunTime / ContextActivityUtils.cs / 1305376 / ContextActivityUtils.cs
#pragma warning disable 1634, 1691 using System; using System.Globalization; using System.Collections; using System.Collections.Generic; using System.Collections.Specialized; using System.Collections.ObjectModel; using System.ComponentModel.Design.Serialization; using System.Diagnostics; using System.IO; using System.Reflection; using System.Text; using System.Threading; using System.Xml; using System.Transactions; using SES = System.EnterpriseServices; using System.Workflow.ComponentModel; using System.Workflow.Runtime.Hosting; namespace System.Workflow.Runtime { #region ContextActivityUtils Class internal static class ContextActivityUtils { internal static int ContextId(Activity activity) { return ((ActivityExecutionContextInfo)ContextActivity(activity).GetValue(Activity.ActivityExecutionContextInfoProperty)).ContextId; } internal static Activity ContextActivity(Activity activity) { Activity contextActivity = activity; while (contextActivity != null && contextActivity.GetValue(Activity.ActivityExecutionContextInfoProperty) == null) contextActivity = contextActivity.Parent; return contextActivity; } internal static Activity ParentContextActivity(Activity activity) { Activity contextActivity = ContextActivity(activity); ActivityExecutionContextInfo executionContextInfo = (ActivityExecutionContextInfo)contextActivity.GetValue(Activity.ActivityExecutionContextInfoProperty); if (executionContextInfo.ParentContextId == -1) return null; return RetrieveWorkflowExecutor(activity).GetContextActivityForId(executionContextInfo.ParentContextId); } internal static IWorkflowCoreRuntime RetrieveWorkflowExecutor(Activity activity) { // fetch workflow executor IWorkflowCoreRuntime workflowExecutor = null; Activity rootActivity = activity; while (rootActivity != null && rootActivity.Parent != null) rootActivity = rootActivity.Parent; if (rootActivity != null) workflowExecutor = (IWorkflowCoreRuntime)rootActivity.GetValue(WorkflowExecutor.WorkflowExecutorProperty); return workflowExecutor; } internal static Activity RootContextActivity(Activity activity) { return RetrieveWorkflowExecutor(activity).RootActivity; } } #endregion } // 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.Globalization; using System.Collections; using System.Collections.Generic; using System.Collections.Specialized; using System.Collections.ObjectModel; using System.ComponentModel.Design.Serialization; using System.Diagnostics; using System.IO; using System.Reflection; using System.Text; using System.Threading; using System.Xml; using System.Transactions; using SES = System.EnterpriseServices; using System.Workflow.ComponentModel; using System.Workflow.Runtime.Hosting; namespace System.Workflow.Runtime { #region ContextActivityUtils Class internal static class ContextActivityUtils { internal static int ContextId(Activity activity) { return ((ActivityExecutionContextInfo)ContextActivity(activity).GetValue(Activity.ActivityExecutionContextInfoProperty)).ContextId; } internal static Activity ContextActivity(Activity activity) { Activity contextActivity = activity; while (contextActivity != null && contextActivity.GetValue(Activity.ActivityExecutionContextInfoProperty) == null) contextActivity = contextActivity.Parent; return contextActivity; } internal static Activity ParentContextActivity(Activity activity) { Activity contextActivity = ContextActivity(activity); ActivityExecutionContextInfo executionContextInfo = (ActivityExecutionContextInfo)contextActivity.GetValue(Activity.ActivityExecutionContextInfoProperty); if (executionContextInfo.ParentContextId == -1) return null; return RetrieveWorkflowExecutor(activity).GetContextActivityForId(executionContextInfo.ParentContextId); } internal static IWorkflowCoreRuntime RetrieveWorkflowExecutor(Activity activity) { // fetch workflow executor IWorkflowCoreRuntime workflowExecutor = null; Activity rootActivity = activity; while (rootActivity != null && rootActivity.Parent != null) rootActivity = rootActivity.Parent; if (rootActivity != null) workflowExecutor = (IWorkflowCoreRuntime)rootActivity.GetValue(WorkflowExecutor.WorkflowExecutorProperty); return workflowExecutor; } internal static Activity RootContextActivity(Activity activity) { return RetrieveWorkflowExecutor(activity).RootActivity; } } #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
- NameValuePermission.cs
- EncoderBestFitFallback.cs
- MemoryPressure.cs
- InstalledVoice.cs
- FilteredReadOnlyMetadataCollection.cs
- HttpProcessUtility.cs
- xsdvalidator.cs
- ObjectSecurity.cs
- path.cs
- KeyFrames.cs
- BindingGroup.cs
- FixedHyperLink.cs
- TextParentUndoUnit.cs
- PointConverter.cs
- HtmlFormWrapper.cs
- SpeechSynthesizer.cs
- ItemsChangedEventArgs.cs
- XhtmlBasicValidatorAdapter.cs
- OperationCanceledException.cs
- XXXInfos.cs
- DrawListViewSubItemEventArgs.cs
- TreeViewItem.cs
- Metadata.cs
- FormsAuthenticationModule.cs
- WindowsUpDown.cs
- Schema.cs
- DefaultClaimSet.cs
- EDesignUtil.cs
- InfoCardRSAPKCS1SignatureDeformatter.cs
- SqlCommandSet.cs
- EntityException.cs
- DataContractSerializerOperationBehavior.cs
- ControlParameter.cs
- GridErrorDlg.cs
- JoinTreeNode.cs
- TransformerInfo.cs
- Propagator.JoinPropagator.SubstitutingCloneVisitor.cs
- OuterProxyWrapper.cs
- CleanUpVirtualizedItemEventArgs.cs
- WarningException.cs
- DependencyObject.cs
- GroupLabel.cs
- ReflectionPermission.cs
- RuntimeResourceSet.cs
- ItemCollection.cs
- WebZoneDesigner.cs
- FrameworkReadOnlyPropertyMetadata.cs
- SelectorItemAutomationPeer.cs
- RegularExpressionValidator.cs
- SoapFault.cs
- ListViewTableRow.cs
- JournalNavigationScope.cs
- LabelInfo.cs
- WebSysDisplayNameAttribute.cs
- CollectionViewSource.cs
- DBPropSet.cs
- SystemIcons.cs
- GifBitmapEncoder.cs
- GetPageNumberCompletedEventArgs.cs
- ContractHandle.cs
- ProjectionCamera.cs
- DoubleLink.cs
- FileSystemInfo.cs
- XmlNodeChangedEventManager.cs
- SoapInteropTypes.cs
- StylusPointCollection.cs
- RoleGroupCollection.cs
- AsymmetricSignatureDeformatter.cs
- TransportOutputChannel.cs
- MetadataException.cs
- JpegBitmapDecoder.cs
- DoubleAnimationUsingKeyFrames.cs
- FlowDocumentScrollViewer.cs
- ConnectionStringsExpressionBuilder.cs
- NumberFormatInfo.cs
- CalendarDateRangeChangingEventArgs.cs
- StyleCollection.cs
- UrlUtility.cs
- Pair.cs
- CollectionContainer.cs
- PositiveTimeSpanValidatorAttribute.cs
- ISO2022Encoding.cs
- TimeManager.cs
- HMACMD5.cs
- BaseValidator.cs
- _SpnDictionary.cs
- IdentityHolder.cs
- DoubleStorage.cs
- Object.cs
- PageContent.cs
- DispatchWrapper.cs
- StrokeCollectionDefaultValueFactory.cs
- PrivilegeNotHeldException.cs
- Header.cs
- PersistencePipeline.cs
- AnnotationMap.cs
- ClientSponsor.cs
- MouseGestureConverter.cs
- DecimalConstantAttribute.cs
- CredentialManagerDialog.cs