Esempio n. 1
0
        public void CreateSimplePreConditionRuleTest()
        {
            PreConditionRuleType rule = SequencingManager.CreateSimplePreConditionRule(SequencingRuleConditionType.completed, PreConditionRuleActionType.skip);

            Assert.IsNotNull(rule);
            Assert.AreEqual(SequencingRuleConditionType.completed, rule.ruleConditions.ruleCondition[0].condition);
            Assert.AreEqual(PreConditionRuleActionType.skip, rule.ruleAction.action);
        }
Esempio n. 2
0
        /// <summary>
        /// Creates PreConditionRule with simple parameters.
        /// </summary>
        /// <param name="condition">SequencingRuleConditionType enumerable value represents Rule Condition.</param>
        /// <param name="action">PreConditionRuleActionType enumerable value represents PreCondition Rule Action.</param>
        /// <returns>PreConditionRuleType value with appropriate parameters.</returns>
        public static PreConditionRuleType CreateSimplePreConditionRule([NotNull] SequencingRuleConditionType condition, [NotNull] PreConditionRuleActionType action)
        {
            PreConditionRuleType preConditionRule = new PreConditionRuleType();

            preConditionRule.ruleConditions = new SequencingRuleTypeRuleConditions();
            preConditionRule.ruleConditions.ruleCondition = new ManifestNodeList <SequencingRuleTypeRuleConditionsRuleCondition>(preConditionRule.ruleConditions);
            preConditionRule.ruleConditions.ruleCondition.Add(new SequencingRuleTypeRuleConditionsRuleCondition());
            preConditionRule.ruleConditions.ruleCondition[0].condition = condition;
            preConditionRule.ruleAction        = new PreConditionRuleTypeRuleAction();
            preConditionRule.ruleAction.action = action;
            return(preConditionRule);
        }
Esempio n. 3
0
        /// <summary>
        /// Creates Pre Condition Rule
        /// </summary>
        /// <param name="conditions">Sequencing Rule Conditions.</param>
        /// <param name="ruleAction">Action.</param>
        /// <returns>PreConditionRuleType generated from arguments.</returns>
        public static PreConditionRuleType CreatePreConditionRule(ConditionCombinationType conditionCombination, IEnumerable <SequencingRuleTypeRuleConditionsRuleCondition> conditions, PreConditionRuleActionType ruleAction)
        {
            PreConditionRuleType result = new PreConditionRuleType();

            result.ruleConditions = new SequencingRuleTypeRuleConditions();
            result.ruleConditions.conditionCombination = conditionCombination;
            result.ruleConditions.ruleCondition        = new ManifestNodeList <SequencingRuleTypeRuleConditionsRuleCondition>(result.ruleConditions);
            result.ruleConditions.ruleCondition.AddRange(conditions);
            result.ruleAction        = new PreConditionRuleTypeRuleAction();
            result.ruleAction.action = ruleAction;

            return(result);
        }
Esempio n. 4
0
        private void miAddPreConditionRule_Click(object sender, EventArgs e)
        {
            SequencingRulesType c = (SequencingRulesType)tvManifest.SelectedNode.Tag;

            PreConditionRuleType p = new PreConditionRuleType();

            c.preConditionRule.Parent = c;

            c.preConditionRule.Add(p);

            Forms.PropertyEditor.Show(p);
            tvManifest.SelectedNode.Expand();
        }
Esempio n. 5
0
        private void miAddRuleAction_Click(object sender, EventArgs e)
        {
            if (tvManifest.SelectedNode.Tag is PreConditionRuleType)
            {
                PreConditionRuleType c = (PreConditionRuleType)tvManifest.SelectedNode.Tag;

                Debug.Assert(c.ruleAction == null, "Rule Action already exists");

                c.ruleAction = new PreConditionRuleTypeRuleAction();

                Forms.PropertyEditor.Show(c.ruleAction);
                tvManifest.SelectedNode.Expand();
            }
            if (tvManifest.SelectedNode.Tag is PostConditionRuleType)
            {
                PostConditionRuleType c = (PostConditionRuleType)tvManifest.SelectedNode.Tag;

                Debug.Assert(c.ruleAction == null, "Rule Action already exists");

                c.ruleAction = new PostConditionRuleTypeRuleAction();

                Forms.PropertyEditor.Show(c.ruleAction);
                tvManifest.SelectedNode.Expand();
            }
            if (tvManifest.SelectedNode.Tag is ExitConditionRuleType)
            {
                ExitConditionRuleType c = (ExitConditionRuleType)tvManifest.SelectedNode.Tag;

                Debug.Assert(c.ruleAction == null, "Rule Action already exists");

                c.ruleAction = new ExitConditionRuleTypeRuleAction();

                Forms.PropertyEditor.Show(c.ruleAction);
                tvManifest.SelectedNode.Expand();
            }
        }
Esempio n. 6
0
        private void miAddPreConditionRule_Click(object sender, EventArgs e)
        {
            SequencingRulesType c = (SequencingRulesType) tvManifest.SelectedNode.Tag;

            PreConditionRuleType p = new PreConditionRuleType();

            c.preConditionRule.Parent = c;

            c.preConditionRule.Add(p);

            Forms.PropertyEditor.Show(p);
            tvManifest.SelectedNode.Expand();
        }