Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- PerformanceCounterTraceRecord.cs
- PackageDigitalSignatureManager.cs
- HttpWrapper.cs
- UIElement3DAutomationPeer.cs
- TimeSpanConverter.cs
- ItemsChangedEventArgs.cs
- CallbackValidator.cs
- TagPrefixInfo.cs
- ThreadInterruptedException.cs
- TextMarkerSource.cs
- TextBox.cs
- JapaneseLunisolarCalendar.cs
- RtfNavigator.cs
- XmlSchemaNotation.cs
- XmlSchemaAppInfo.cs
- DisplayInformation.cs
- DataSourceSelectArguments.cs
- HttpApplicationFactory.cs
- MatrixTransform.cs
- BooleanProjectedSlot.cs
- PlaceHolder.cs
- WebPartTracker.cs
- WebPartZoneAutoFormat.cs
- TreeViewBindingsEditor.cs
- GlobalItem.cs
- FilterException.cs
- FamilyTypeface.cs
- SamlAssertionKeyIdentifierClause.cs
- SystemResourceHost.cs
- BaseAppDomainProtocolHandler.cs
- FormsAuthenticationTicket.cs
- MetadataArtifactLoaderResource.cs
- ReflectEventDescriptor.cs
- AdapterUtil.cs
- TdsParserStaticMethods.cs
- StackSpiller.Generated.cs
- SelectionPattern.cs
- ProfileGroupSettingsCollection.cs
- ManagementOptions.cs
- TextDecorationLocationValidation.cs
- StyleCollection.cs
- LookupNode.cs
- ColorInterpolationModeValidation.cs
- mongolianshape.cs
- XpsFilter.cs
- CultureInfoConverter.cs
- xmlsaver.cs
- ServerValidateEventArgs.cs
- Annotation.cs
- SrgsSemanticInterpretationTag.cs
- EditorServiceContext.cs
- DataObjectMethodAttribute.cs
- CompModSwitches.cs
- ButtonBaseAdapter.cs
- CompModSwitches.cs
- ResourcesChangeInfo.cs
- WpfKnownTypeInvoker.cs
- VoiceInfo.cs
- HtmlFormAdapter.cs
- MenuEventArgs.cs
- ServiceChannelProxy.cs
- ReadOnlyObservableCollection.cs
- IisTraceListener.cs
- ServiceModelEnumValidatorAttribute.cs
- CommandEventArgs.cs
- SiteOfOriginContainer.cs
- FamilyTypeface.cs
- InstanceCreationEditor.cs
- TextTreeTextElementNode.cs
- PresentationTraceSources.cs
- HttpEncoderUtility.cs
- ArrayList.cs
- WindowsMenu.cs
- XPathNavigatorReader.cs
- ELinqQueryState.cs
- SecurityUtils.cs
- SpStreamWrapper.cs
- SqlNode.cs
- WebPageTraceListener.cs
- TextBreakpoint.cs
- mediaeventargs.cs
- _UriSyntax.cs
- TypeInfo.cs
- XamlTreeBuilder.cs
- LongValidator.cs
- TextRangeEditTables.cs
- ISessionStateStore.cs
- MemberRestriction.cs
- __TransparentProxy.cs
- ScopeElementCollection.cs
- ComplexTypeEmitter.cs
- HttpCacheParams.cs
- ResourceExpressionBuilder.cs
- util.cs
- AssemblyFilter.cs
- DataGridViewIntLinkedList.cs
- Byte.cs
- Point4DValueSerializer.cs
- ModuleConfigurationInfo.cs
- NavigationFailedEventArgs.cs