Summary Table
Categories |
Total Count |
PII |
0 |
URL |
0 |
DNS |
0 |
EKL |
0 |
IP |
0 |
PORT |
0 |
VsID |
0 |
CF |
0 |
AI |
0 |
VPD |
0 |
PL |
0 |
Other |
0 |
File Content
/*
* QaspValidator.java
* Copyright (c) 2019 Veterans Affairs.
*/
package gov.va.oneconsult.seoc.api.validation;
import javax.validation.ConstraintValidator;
import javax.validation.ConstraintValidatorContext;
import org.springframework.stereotype.Component;
import gov.va.oneconsult.seoc.api.model.Seoc;
import gov.va.oneconsult.seoc.api.model.Qasp;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* Validation for qasp field of {@link Seoc}.
* Checks if the qasp value has been discontinued {@link Qasp}
* @author AbleVets
*/
@Component
public class QaspValidator implements ConstraintValidator<ValidQasp, Qasp>
{
public static final Logger logger = LoggerFactory.getLogger(QaspValidator.class);
/**
* {@inheritDoc}
*/
@Override
public void initialize(ValidQasp constraintAnnotation)
{
}
/**
* {@inheritDoc}
*/
@Override
public boolean isValid(Qasp qasp, ConstraintValidatorContext context)
{
if (qasp == null) {
return true;
}
logger.info("QaspValidator");
Boolean discontinued = qasp.getDiscontinued();
if (discontinued == null || !discontinued) {
return true;
}
context.disableDefaultConstraintViolation();
context
.buildConstraintViolationWithTemplate("The QASP value " + qasp.getDescription() + " has been discontinued. A valid QASP must be selected.")
.addConstraintViolation();
return false;
}
}