001package cn.sticki.validator.spel.result; 002 003import java.util.ArrayList; 004import java.util.Collections; 005import java.util.List; 006 007/** 008 * 对象校验结果 009 * 010 * @author 阿杆 011 * @version 1.0 012 * @since 2024/4/29 013 */ 014public class ObjectValidResult { 015 016 private final ArrayList<FieldError> errors = new ArrayList<>(); 017 018 public boolean hasError() { 019 return !errors.isEmpty(); 020 } 021 022 public boolean noneError() { 023 return errors.isEmpty(); 024 } 025 026 public List<FieldError> getErrors() { 027 return Collections.unmodifiableList(errors); 028 } 029 030 public int getErrorSize() { 031 return errors.size(); 032 } 033 034 /** 035 * 添加校验结果 036 * <p> 037 * 当校验结果为false时,会将错误信息添加到结果中 038 */ 039 public void addFieldResults(List<FieldValidResult> results) { 040 List<FieldError> errors = new ArrayList<>(); 041 for (FieldValidResult result : results) { 042 if (!result.isSuccess()) { 043 errors.add(new FieldError(result.getFieldName(), result.getMessage())); 044 } 045 } 046 this.errors.addAll(errors); 047 } 048 049}