package app.model;
import jakarta.validation.constraints.Email;
import jakarta.validation.constraints.NotNull; // "F:\projects\security1\jars\jakarta.validation-api-3.0.2.jar"
import jakarta.validation.constraints.Size;

/**
 *
 * @author Tim
 */
public class CredentialData {

    @NotNull(message = "Email is required.")
    @Email(regexp = "^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,3}$", 
           message = "Please provide a valid email address.")
    private String email;
    
    @NotNull(message = "Password is required.")
    @Size(min=8,max=16,message="Size must be between 8 and 16.")
    private String password;
    
    @NotNull(message = "Password confimation is required and must match 'password'.")
    @Size(min=8,max=16,message="Size must be between 8 and 16.")
    private String confirmation;
    
    public CredentialData() {
        email = "";
        password = "";
        confirmation = ""; 
    }
    
    public CredentialData(String email, String password, String confirmation) {
        this.email = email;
        this.password = password;
        this.confirmation = confirmation;
    }
    
    public boolean areEqual() {
        return password.equals(confirmation);
    }
    
    public String getEmail() { return email; }
    
    public String getConfirmation() { return confirmation; }
    
    public String getPassword() { return password; }

    public void setConfirmation(String confirmation) {
        this.confirmation = confirmation;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}
