/** * Copyright (c)2010-2011 Enterprise Website Content Management System(EWCMS), All rights reserved. * EWCMS PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * http://www.ewcms.com */ package com.ewcms.scheduling.generate.common; import java.io.Serializable; import java.util.ArrayList; import java.util.Iterator; import java.util.List; /** * 校验错误信息集合 * * @author 吴智俊 */ public class ValidationErrors implements ValidationErrorsable, Serializable { private static final long serialVersionUID = 2491691483305419308L; private final List<ValidationErrorable> errors; public ValidationErrors() { errors = new ArrayList<ValidationErrorable>(); } public Boolean isError() { return !errors.isEmpty(); } public List<ValidationErrorable> getErrors() { return errors; } public void add(ValidationErrorable error) { errors.add(error); } @Override public String toString() { if (!isError()) { return "没有错误"; } StringBuffer sb = new StringBuffer(); // sb.append(errors.size()); // sb.append(" error(s)\n"); for (Iterator<ValidationErrorable> it = errors.iterator(); it.hasNext();) { ValidationErrorable error = (ValidationErrorable) it.next(); sb.append(error.toString()); sb.append("<br>"); } return sb.toString(); } public void removeError(String code, String field) { for (Iterator<ValidationErrorable> it = errors.iterator(); it.hasNext();) { ValidationErrorable error = (ValidationErrorable) it.next(); if (matches(error, code, field)) { it.remove(); } } } protected boolean matches(ValidationErrorable error, String code, String field) { return code.equals(error.getErrorCode()) && field.equals(error.getField()); } }