private IEnumerable <string> ValidateRecursive(CreateConditionNodeBase createConditionNodeBase, Guid tenantId)
        {
            List <string> messages = new List <string>(0);

            switch (createConditionNodeBase)
            {
            case CreateComposedConditionNode createComposedConditionNode:
                foreach (CreateConditionNodeBase child in createComposedConditionNode.ChildNodes)
                {
                    IEnumerable <string> childMessages = this.ValidateRecursive(child, tenantId);
                    messages.AddRange(childMessages);
                }

                break;

            case CreateValueConditionNode createValueConditionNode:
                string message = this.ValidateCurrent(createValueConditionNode, tenantId);

                if (message != null)
                {
                    messages.Add(message);
                }

                break;

            default:
                break;
            }

            return(messages);
        }
Esempio n. 2
0
        private IEnumerable <string> ValidateRecursive(CreateConditionNodeBase createConditionNodeBase)
        {
            List <string> messages = new List <string>(0);

            if (createConditionNodeBase is CreateComposedConditionNode createComposedConditionNode)
            {
                foreach (CreateConditionNodeBase child in createComposedConditionNode.ChildNodes)
                {
                    IEnumerable <string> childMessages = this.ValidateRecursive(child);
                    messages.AddRange(childMessages);
                }

                string message = this.ValidateCurrent(createComposedConditionNode);

                if (message != null)
                {
                    messages.Add(message);
                }
            }

            return(messages);
        }