Java tutorial
package com.webbfontaine.valuewebb.model.validators.tt; import com.webbfontaine.valuewebb.model.Container; import com.webbfontaine.valuewebb.model.TtGen; import com.webbfontaine.valuewebb.model.constants.Constants; import com.webbfontaine.valuewebb.validation.ErrorHandling; import org.apache.commons.lang3.StringUtils; import javax.faces.application.FacesMessage; import java.util.List; /** * Copyrights 2002-2011 Webb Fontaine * This software is the proprietary information of Webb Fontaine. * Its use is subject to License terms. * Developer: nigiyan * Date: 09/12/2011 */ public class ContainersValidator implements Constants { private TtGen ttGen; private ErrorHandling errorHandling; public ContainersValidator(TtGen ttGen, ErrorHandling errorHandling) { this.ttGen = ttGen; this.errorHandling = errorHandling; } public void checkContainers(String requestedOperation) { List<Container> containers = ttGen.getTtTrans().getContainers(); for (int i = 0; i < containers.size(); i++) { if (!StringUtils.isEmpty(containers.get(i).getNumber())) { // if empty let mandatory rules work boolean tmpError = false; for (int j = i + 1; j < containers.size(); j++) { if (containers.get(i).getNumber().equals(containers.get(j).getNumber())) { tmpError = true; ErrorHandling.addFacesMessage("containers:" + i + ":number", "Container duplicated", FacesMessage.SEVERITY_ERROR); } } if (!tmpError) { errorHandling.removeErrorByFieldIdAndErrorMessage("containers:" + i + ":number", "Container duplicated"); } } } if (ACCEPT.equals(requestedOperation) || COMPLETE_VC.equals(requestedOperation)) { Integer fclNumber = ttGen.getTtTrans().getFclNum() == null ? 0 : ttGen.getTtTrans().getFclNum(); Integer lclNumber = ttGen.getTtTrans().getLclNum() == null ? 0 : ttGen.getTtTrans().getLclNum(); if (fclNumber + lclNumber == ttGen.getTtTrans().getContainers().size()) { errorHandling.removeErrorByFieldIdAndErrorMessage("number", "Wrong number of containers"); } else { ErrorHandling.addFacesMessage("number", "Wrong number of containers", FacesMessage.SEVERITY_ERROR); } } } }