Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WF / Activities / Policy.cs / 1305376 / Policy.cs
namespace System.Workflow.Activities { using System; using System.Text; using System.Reflection; using System.Collections; using System.CodeDom; using System.ComponentModel; using System.ComponentModel.Design; using System.ComponentModel.Design.Serialization; using System.Drawing; using System.Workflow.ComponentModel; using System.Workflow.ComponentModel.Design; using System.Collections.Generic; using System.Workflow.Activities.Rules; using System.Workflow.Activities.Rules.Design; using System.Workflow.Runtime; using System.Workflow.ComponentModel.Compiler; using System.Drawing.Design; using System.Workflow.Activities.Common; #region Class Policy [SRDescription(SR.PolicyActivityDescription)] [ToolboxBitmap(typeof(PolicyActivity), "Resources.Rule.png")] [ToolboxItem(typeof(ActivityToolboxItem))] [Designer(typeof(PolicyDesigner), typeof(IDesigner))] [SRCategory(SR.Standard)] public sealed class PolicyActivity : Activity { #region Public Dependency Properties public static readonly DependencyProperty RuleSetReferenceProperty = DependencyProperty.Register("RuleSetReference", typeof(RuleSetReference), typeof(PolicyActivity), new PropertyMetadata(DependencyPropertyOptions.Metadata, new Attribute[] { new ValidationOptionAttribute(ValidationOption.Required) })); #endregion #region Constructors public PolicyActivity() { } public PolicyActivity(string name) : base(name) { } #endregion protected override void Initialize(IServiceProvider provider) { // if there is no parent, then there will be no validation of RuleSetReference // as well, there will be no RuleDefinitions if (this.Parent == null) throw new InvalidOperationException(SR.GetString(SR.Error_MustHaveParent)); base.Initialize(provider); } protected override ActivityExecutionStatus Execute(ActivityExecutionContext executionContext) { if (executionContext == null) throw new ArgumentNullException("executionContext"); Activity declaringActivity = Helpers.GetDeclaringActivity(this); if (declaringActivity == null) declaringActivity = Helpers.GetRootActivity(this); RuleDefinitions ruleDefinitions = (RuleDefinitions)declaringActivity.GetValue(RuleDefinitions.RuleDefinitionsProperty); if (ruleDefinitions != null) { RuleSet ruleSet = ruleDefinitions.RuleSets[this.RuleSetReference.RuleSetName]; if (ruleSet != null) { ruleSet.Execute(declaringActivity, executionContext); } } return ActivityExecutionStatus.Closed; } [SRDescription(SR.RuleSetDescription)] [MergableProperty(false)] public RuleSetReference RuleSetReference { get { return (RuleSetReference)base.GetValue(RuleSetReferenceProperty); } set { base.SetValue(RuleSetReferenceProperty, value); } } } #endregion } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. namespace System.Workflow.Activities { using System; using System.Text; using System.Reflection; using System.Collections; using System.CodeDom; using System.ComponentModel; using System.ComponentModel.Design; using System.ComponentModel.Design.Serialization; using System.Drawing; using System.Workflow.ComponentModel; using System.Workflow.ComponentModel.Design; using System.Collections.Generic; using System.Workflow.Activities.Rules; using System.Workflow.Activities.Rules.Design; using System.Workflow.Runtime; using System.Workflow.ComponentModel.Compiler; using System.Drawing.Design; using System.Workflow.Activities.Common; #region Class Policy [SRDescription(SR.PolicyActivityDescription)] [ToolboxBitmap(typeof(PolicyActivity), "Resources.Rule.png")] [ToolboxItem(typeof(ActivityToolboxItem))] [Designer(typeof(PolicyDesigner), typeof(IDesigner))] [SRCategory(SR.Standard)] public sealed class PolicyActivity : Activity { #region Public Dependency Properties public static readonly DependencyProperty RuleSetReferenceProperty = DependencyProperty.Register("RuleSetReference", typeof(RuleSetReference), typeof(PolicyActivity), new PropertyMetadata(DependencyPropertyOptions.Metadata, new Attribute[] { new ValidationOptionAttribute(ValidationOption.Required) })); #endregion #region Constructors public PolicyActivity() { } public PolicyActivity(string name) : base(name) { } #endregion protected override void Initialize(IServiceProvider provider) { // if there is no parent, then there will be no validation of RuleSetReference // as well, there will be no RuleDefinitions if (this.Parent == null) throw new InvalidOperationException(SR.GetString(SR.Error_MustHaveParent)); base.Initialize(provider); } protected override ActivityExecutionStatus Execute(ActivityExecutionContext executionContext) { if (executionContext == null) throw new ArgumentNullException("executionContext"); Activity declaringActivity = Helpers.GetDeclaringActivity(this); if (declaringActivity == null) declaringActivity = Helpers.GetRootActivity(this); RuleDefinitions ruleDefinitions = (RuleDefinitions)declaringActivity.GetValue(RuleDefinitions.RuleDefinitionsProperty); if (ruleDefinitions != null) { RuleSet ruleSet = ruleDefinitions.RuleSets[this.RuleSetReference.RuleSetName]; if (ruleSet != null) { ruleSet.Execute(declaringActivity, executionContext); } } return ActivityExecutionStatus.Closed; } [SRDescription(SR.RuleSetDescription)] [MergableProperty(false)] public RuleSetReference RuleSetReference { get { return (RuleSetReference)base.GetValue(RuleSetReferenceProperty); } set { base.SetValue(RuleSetReferenceProperty, value); } } } #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
- ItemCollection.cs
- ExtensionWindowResizeGrip.cs
- Size.cs
- Track.cs
- DataGridViewCellEventArgs.cs
- InputReport.cs
- RemoteWebConfigurationHostStream.cs
- StyleSelector.cs
- InstanceNormalEvent.cs
- RelationshipFixer.cs
- MarkerProperties.cs
- WindowShowOrOpenTracker.cs
- ClipboardData.cs
- TypeUtils.cs
- InvalidOperationException.cs
- PreparingEnlistment.cs
- _ScatterGatherBuffers.cs
- Matrix3DConverter.cs
- LineVisual.cs
- MruCache.cs
- XmlEnumAttribute.cs
- InternalBase.cs
- MetadataPropertyvalue.cs
- ClockController.cs
- EdmEntityTypeAttribute.cs
- ContextStaticAttribute.cs
- ConfigurationManagerInternal.cs
- CqlErrorHelper.cs
- NameValuePair.cs
- XamlInterfaces.cs
- XmlObjectSerializerWriteContext.cs
- UriScheme.cs
- WindowsTitleBar.cs
- NonParentingControl.cs
- ProfilePropertySettingsCollection.cs
- URL.cs
- FixedPageProcessor.cs
- MarkupObject.cs
- TextParagraphCache.cs
- TextElementEditingBehaviorAttribute.cs
- XPathNodeIterator.cs
- NameSpaceExtractor.cs
- FileDialogPermission.cs
- HtmlElementCollection.cs
- HtmlElementEventArgs.cs
- ProfileEventArgs.cs
- PrimitiveSchema.cs
- SystemTcpStatistics.cs
- DataGridViewTopRowAccessibleObject.cs
- WmlPageAdapter.cs
- WebExceptionStatus.cs
- ValueExpressions.cs
- XmlRawWriterWrapper.cs
- BindingExpressionBase.cs
- TaskFactory.cs
- WebPartsPersonalization.cs
- OdbcRowUpdatingEvent.cs
- HtmlElementErrorEventArgs.cs
- PingReply.cs
- PathSegmentCollection.cs
- LinqDataSourceStatusEventArgs.cs
- AsyncPostBackErrorEventArgs.cs
- ServicePointManagerElement.cs
- AngleUtil.cs
- EntityDataSourceChangedEventArgs.cs
- ResourceWriter.cs
- PointLightBase.cs
- ColumnMap.cs
- DbTransaction.cs
- Button.cs
- SmiMetaData.cs
- ValidationHelper.cs
- FixedSOMTableRow.cs
- AuthenticatedStream.cs
- ComponentEditorForm.cs
- PageContent.cs
- MultilineStringEditor.cs
- DiffuseMaterial.cs
- UrlAuthorizationModule.cs
- ThreadInterruptedException.cs
- ResXResourceWriter.cs
- AnnotationAdorner.cs
- DrawingContextDrawingContextWalker.cs
- TableCellAutomationPeer.cs
- ProviderSettings.cs
- DataGridViewHitTestInfo.cs
- GlyphsSerializer.cs
- StrokeCollection2.cs
- Transform3DGroup.cs
- InheritanceAttribute.cs
- DebugView.cs
- RoleManagerModule.cs
- XmlSchemaObject.cs
- CqlParserHelpers.cs
- NativeCppClassAttribute.cs
- EdmFunctions.cs
- Bidi.cs
- handlecollector.cs
- CompiledIdentityConstraint.cs
- LassoSelectionBehavior.cs