use of se.riv.clinicalprocess.healthcond.certificate.certificatestatusupdateforcareresponder.v3.CertificateStatusUpdateForCareType in project webcert by sklintyg.
the class NotificationWSClient method sendStatusUpdate.
public void sendStatusUpdate(CertificateStatusUpdateForCareType request, @Header(NotificationRouteHeaders.LOGISK_ADRESS) String logicalAddress) throws TemporaryException, PermanentException {
LOG.debug("Sending status update with version 2 to '{}' for intyg '{}'", logicalAddress, request.getIntyg().getIntygsId().getExtension());
CertificateStatusUpdateForCareResponseType response = null;
try {
response = statusUpdateForCareClient.certificateStatusUpdateForCare(logicalAddress, request);
} catch (Exception e) {
LOG.warn("Exception occured when sending status update: {}", e.getMessage());
throw new TemporaryException(e);
}
ResultType result = response.getResult();
switch(result.getResultCode()) {
case ERROR:
if (ErrorIdType.TECHNICAL_ERROR.equals(result.getErrorId())) {
throw new TemporaryException(String.format("NotificationWSClient failed with error code: %s and message %s", result.getErrorId(), result.getResultText()));
} else {
throw new PermanentException(String.format("NotificationWSClient failed with non-recoverable error code: %s and message %s", result.getErrorId(), result.getResultText()));
}
case INFO:
LOG.info("NotificationWSClient got message:" + result.getResultText());
break;
case OK:
break;
}
}
use of se.riv.clinicalprocess.healthcond.certificate.certificatestatusupdateforcareresponder.v3.CertificateStatusUpdateForCareType in project webcert by sklintyg.
the class NotificationWSClientTest method createRequest.
private CertificateStatusUpdateForCareType createRequest() {
CertificateStatusUpdateForCareType res = new CertificateStatusUpdateForCareType();
res.setIntyg(new Intyg());
res.getIntyg().setIntygsId(new IntygId());
res.getIntyg().getIntygsId().setExtension("intygsId");
return res;
}
use of se.riv.clinicalprocess.healthcond.certificate.certificatestatusupdateforcareresponder.v3.CertificateStatusUpdateForCareType in project webcert by sklintyg.
the class NotificationRouteBuilder method initializeJaxbMessageDataFormatV3.
// CHECKSTYLE:OFF LineLength
private JaxbDataFormat initializeJaxbMessageDataFormatV3() throws JAXBException {
// We need to register DatePeriodType with the JAXBContext explicitly for some reason.
JaxbDataFormat jaxbMessageDataFormatV3 = new JaxbDataFormat(JAXBContext.newInstance(CertificateStatusUpdateForCareType.class, DatePeriodType.class, PartialDateType.class));
jaxbMessageDataFormatV3.setPartClass("se.riv.clinicalprocess.healthcond.certificate.certificatestatusupdateforcareresponder.v3.CertificateStatusUpdateForCareType");
jaxbMessageDataFormatV3.setPartNamespace(new QName("urn:riv:clinicalprocess:healthcond:certificate:CertificateStatusUpdateForCareResponder:3", "CertificateStatusUpdateForCare"));
return jaxbMessageDataFormatV3;
}
Aggregations