package com.megatim.generatetxt.pojo; import com.megatim.generatetxt.constraints.FileToValidateDelimiterConstraint; import com.megatim.generatetxt.enums.DataType; import com.megatim.generatetxt.model.TypeFichier; import com.megatimfx.common.validationgroups.ViewFormValidationGroup; import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotNull; import lombok.Getter; import lombok.Setter; /** * * @author STEPHANIE */ @Getter @Setter @FileToValidateDelimiterConstraint(groups = {ViewFormValidationGroup.class}) public class FileToValidate { @NotEmpty(message = "Le fichier à valider est obligatoire", groups = {ViewFormValidationGroup.class}) //@Pattern(regexp="(.+\\.csv)|(.+\\.xlsx)|(.+\\.xls|.+\\.txt)", flags = Flag.CASE_INSENSITIVE, message="Bien vouloir sélectionner un fichier csv, xlsx, xls ou txt" , groups = {ViewFormValidationGroup.class}) private String filePath; @NotNull(message = "Le typefichier est obligatoire", groups = {ViewFormValidationGroup.class}) private TypeFichier typeFichier; private Delimiteur delimiteurLigne; private Delimiteur delimiteurColonne; private String txtFilePath; private String errorFilePath; @NotNull(message = "Le format du fichier de données est obligatoire", groups = {ViewFormValidationGroup.class}) private DataType dataType; private boolean headerPresent; private boolean strictValidation; @Override public String toString() { return filePath+":"+typeFichier.getCode()+":"+dataType.getDataType(); } }