@Override public Set<DataElement> getDataElements( ValidationRule validationRule ) { Set<DataElement> elements = new HashSet<>(); elements.addAll( expressionService.getDataElementsInExpression( validationRule.getLeftSide().getExpression() ) ); elements.addAll( expressionService.getDataElementsInExpression( validationRule.getRightSide().getExpression() ) ); return elements; }
@Override public void deleteExpression( Expression expression ) { Iterator<ValidationRule> iterator = validationRuleService.getAllValidationRules().iterator(); while ( iterator.hasNext() ) { ValidationRule rule = iterator.next(); Expression leftSide = rule.getLeftSide(); Expression rightSide = rule.getRightSide(); if ( (leftSide != null && leftSide.equals( expression )) || (rightSide != null && rightSide.equals( expression )) ) { iterator.remove(); validationRuleService.deleteValidationRule( rule ); } } }
public ValidationRuleExtended( ValidationRule rule ) { this.rule = rule; this.organisationUnitLevels = new HashSet<>( rule.getOrganisationUnitLevels() ); this.leftSlidingWindow = rule.getLeftSide().getSlidingWindow(); this.rightSlidingWindow = rule.getRightSide().getSlidingWindow(); }
@Override public SortedMap<ValidationRule, String> getInvalidValidationRuleLeftSideExpressions() { SortedMap<ValidationRule, String> invalids = new TreeMap<>(); I18n i18n = i18nManager.getI18n(); for ( ValidationRule rule : validationRuleService.getAllValidationRules() ) { ExpressionValidationOutcome result = expressionService.expressionIsValid( rule.getLeftSide().getExpression() ); if ( !result.isValid() ) { invalids.put( rule, i18n.getString(result.getKey()) ); } } return invalids; }
Map<String, Double> leftSideValues = getValuesForExpression( ruleX.getRule().getLeftSide(), ruleX.getLeftSlidingWindow() ); Map<String, Double> rightSideValues = getValuesForExpression( ruleX.getRule().getRightSide(),
@Override public Collection<ValidationRule> getValidationRulesForDataSet( DataSet dataSet ) { Set<String> elementsAndOptionCombos = new HashSet<>(); for ( DataSetElement dataSetElement : dataSet.getDataSetElements() ) { DataElement dataElement = dataSetElement.getDataElement(); elementsAndOptionCombos.add( dataElement.getUid() ); CategoryCombo catCombo = dataSetElement.hasCategoryCombo() ? dataSetElement.getCategoryCombo() : dataElement.getCategoryCombo(); for ( CategoryOptionCombo optionCombo : catCombo.getOptionCombos() ) { elementsAndOptionCombos.add( dataElement.getUid() + Expression.SEPARATOR + optionCombo.getUid() ); } } Set<ValidationRule> rulesForDataSet = new HashSet<>(); for ( ValidationRule rule : getAllFormValidationRules() ) { if ( !Sets.intersection( expressionService.getElementsAndOptionCombosInExpression( rule.getLeftSide().getExpression() ), elementsAndOptionCombos ).isEmpty() || !Sets.intersection( expressionService.getElementsAndOptionCombosInExpression( rule.getRightSide().getExpression() ), elementsAndOptionCombos ).isEmpty() ) { rulesForDataSet.add( rule ); } } return rulesForDataSet; }
.getDimensionalItemIdsInExpression( rule.getLeftSide().getExpression() ); dimensionItemIdentifiers.putValues( expressionService.getDimensionalItemIdsInExpression( rule.getRightSide().getExpression() ) );
if ( ruleX.getRule().getLeftSide().getMissingValueStrategy() == NEVER_SKIP )