Пример #1
0
        protected void AddConditionals(IList <SmartConditionalJSONData> conditions)
        {
            if (conditions != null)
            {
                foreach (SmartConditionalJSONData condition in conditions)
                {
                    ParameterConditional conditional = ParameterConditional.Factory(condition.type, parameters[condition.compared_parameter_id - 1]);
                    if (condition.compare_to_parameter_id > 0)
                    {
                        conditional.SetCompareTo(parameters[condition.compare_to_parameter_id - 1]);
                    }
                    else
                    {
                        conditional.SetCompareTo(condition.compare_to_value);
                    }

                    if (conditional is ParameterConditionalCompareValue)
                    {
                        ((ParameterConditionalCompareValue)conditional).SetCompareType(condition.compare_type);
                    }

                    if (condition.warning_type != WarningType.NOT_SET)
                    {
                        conditional.warningType = condition.warning_type;
                    }

                    if (condition.error != null)
                    {
                        conditional.SetDescription(condition.error);
                    }

                    if (condition.invert)
                    {
                        conditional = new ParameterConditionalInversed(conditional);
                    }
                    AddConditional(conditional);
                }
            }
        }
Пример #2
0
 protected void AddConditional(ParameterConditional conditional)
 {
     this.conditionals.Add(conditional);
 }