@Override public int compare( ValidationResult result1, ValidationResult result2 ) { if ( result1.getPeriod() == null && result2.getPeriod() == null ) { return 0; } else if ( result1.getPeriod() == null ) { return 1; } else if ( result2.getPeriod() == null ) { return -1; } return result1.getPeriod().getStartDate().compareTo( result2.getPeriod().getStartDate() ); } }
@Override public void saveValidationResults( Collection<ValidationResult> validationResults ) { validationResults.forEach( validationResult -> { validationResult.setPeriod( periodService.reloadPeriod( validationResult.getPeriod() ) ); validationResultStore.save( validationResult ); } ); }
@Override public void deletePeriod( Period period ) { validationResultService.getAllValidationResults().forEach( validationResult -> { if ( validationResult.getPeriod().equals( period ) ) { validationResultService.deleteValidationResult( validationResult ); } } ); }
public Builder withInitialResults( Collection<ValidationResult> results ) { this.context.validationResults.addAll( results ); results.forEach( validationResult -> { List<ValidationResult> res = context.initialValidationResults .getValue( validationResult.getOrganisationUnit(), validationResult.getValidationRule(), validationResult.getPeriod() ); if ( res == null ) { res = new ArrayList<>(); } res.add( validationResult ); context.initialValidationResults .putEntry( validationResult.getOrganisationUnit(), validationResult.getValidationRule(), validationResult.getPeriod(), res ); } ); return this; } }
@Override public List<Object> getUniqueValues( ValidationResult validationResult ) { return getObjectList( validationResult.getValidationRule().getId(), validationResult.getPeriod().getId(), validationResult.getOrganisationUnit().getId(), validationResult.getAttributeOptionCombo().getId(), validationResult.getDayInPeriod() ); }
@Override public List<Object> getValues( ValidationResult validationResult ) { return getObjectList( validationResult.getLeftsideValue(), validationResult.getRightsideValue(), validationResult.getValidationRule().getId(), validationResult.getPeriod().getId(), validationResult.getOrganisationUnit().getId(), validationResult.getAttributeOptionCombo().getId(), validationResult.getDayInPeriod() ); }
/** * Compare ValidationResults so they will be listed in the desired * order: by validationRule, period, attributeOptionCombo and orgUnit. * * @param other The other ValidationResult to compare with. * @return a negative integer, zero, or a positive integer as this object * is less than, equal to, or greater than the specified object. */ @Override public int compareTo( ValidationResult other ) { return new CompareToBuilder() .append( this.validationRule, other.getValidationRule() ) .append( this.period, other.getPeriod() ) .append( this.attributeOptionCombo, other.getAttributeOptionCombo() ) .append( this.organisationUnit, other.getOrganisationUnit() ) .append( this.id, other.getId() ) .toComparison(); }