Search in sources :

Example 1 with SendMedicalCertificateQuestionValidator

use of se.inera.intyg.webcert.fkstub.validation.SendMedicalCertificateQuestionValidator in project webcert by sklintyg.

the class SendQuestionStub method sendMedicalCertificateQuestion.

@Override
public SendMedicalCertificateQuestionResponseType sendMedicalCertificateQuestion(AttributedURIType logicalAddress, SendMedicalCertificateQuestionType parameters) {
    SendMedicalCertificateQuestionResponseType response = new SendMedicalCertificateQuestionResponseType();
    if (logicalAddress == null) {
        response.setResult(ResultOfCallUtil.failResult("Ingen LogicalAddress är satt"));
    } else if (!LOGICAL_ADDRESS.equals(logicalAddress.getValue())) {
        response.setResult(ResultOfCallUtil.failResult("LogicalAddress '" + logicalAddress.getValue() + "' är inte samma som '" + LOGICAL_ADDRESS + "'"));
    } else if ("error".equalsIgnoreCase(parameters.getQuestion().getFraga().getMeddelandeText())) {
        response.setResult(ResultOfCallUtil.failResult("Du ville ju få ett fel"));
    } else {
        QuestionToFkType questionType = parameters.getQuestion();
        SendMedicalCertificateQuestionValidator validator = new SendMedicalCertificateQuestionValidator(questionType);
        try {
            validator.validateAndCorrect();
            response.setResult(ResultOfCallUtil.okResult());
        } catch (ValidationException e) {
            response.setResult(ResultOfCallUtil.failResult(e.getMessage()));
        }
        questionAnswerStore.addQuestion(parameters.getQuestion());
    }
    return response;
}
Also used : ValidationException(se.inera.intyg.webcert.fkstub.validation.ValidationException) SendMedicalCertificateQuestionValidator(se.inera.intyg.webcert.fkstub.validation.SendMedicalCertificateQuestionValidator) QuestionToFkType(se.inera.ifv.insuranceprocess.healthreporting.sendmedicalcertificatequestionresponder.v1.QuestionToFkType) SendMedicalCertificateQuestionResponseType(se.inera.ifv.insuranceprocess.healthreporting.sendmedicalcertificatequestionresponder.v1.SendMedicalCertificateQuestionResponseType)

Aggregations

QuestionToFkType (se.inera.ifv.insuranceprocess.healthreporting.sendmedicalcertificatequestionresponder.v1.QuestionToFkType)1 SendMedicalCertificateQuestionResponseType (se.inera.ifv.insuranceprocess.healthreporting.sendmedicalcertificatequestionresponder.v1.SendMedicalCertificateQuestionResponseType)1 SendMedicalCertificateQuestionValidator (se.inera.intyg.webcert.fkstub.validation.SendMedicalCertificateQuestionValidator)1 ValidationException (se.inera.intyg.webcert.fkstub.validation.ValidationException)1