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); }
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); }
public void Add([NotNull] IDatasetMatchCriterion criterion) { _criteria.Add(criterion); }