Exemplo n.º 1
0
        private static bool TryGetDatasetMatchCriteria(
            [NotNull] IEnumerable <NamedValuesExpression> expressions,
            [NotNull] NotificationCollection notifications,
            [NotNull] out IEnumerable <IDatasetMatchCriterion> criteria)
        {
            var list = new List <IDatasetMatchCriterion>();

            var anyFailure = false;

            foreach (NamedValuesExpression expression in expressions)
            {
                IDatasetMatchCriterion criterion = TryCreate(expression, notifications);
                if (criterion == null)
                {
                    anyFailure = true;
                }
                else
                {
                    list.Add(criterion);
                }
            }

            criteria = list;
            return(!anyFailure);
        }
Exemplo n.º 2
0
        private static IDatasetMatchCriterion TryCreate(
            [NotNull] NamedValuesConjunctionExpression conjunction,
            [NotNull] NotificationCollection notifications)
        {
            var result = new DatasetMatchCriterionConjunction();

            var anyFailure = false;

            foreach (NamedValues namedValues in conjunction.NamedValuesCollection)
            {
                IDatasetMatchCriterion criterion = TryCreate(namedValues, notifications);
                if (criterion != null)
                {
                    result.Add(criterion);
                }
                else
                {
                    anyFailure = true;
                }
            }

            return(anyFailure
                                       ? null
                                       : result);
        }
Exemplo n.º 3
0
 public void Add([NotNull] IDatasetMatchCriterion criterion)
 {
     _criteria.Add(criterion);
 }