PDF
Contents1Contentstry { return client.getVehicleBaseData(finOrVin);} catch (Exception e) { log.error("error loading vehicle basic data from eva for finOrVin:{}", finOrVin); throw new EvaAccessFailureException(evaLoadService.generateFallback(e.getMessage()));}Fallback generateFallback(String message) { try { int startPos = message.indexOf("{\"error\":"); if (startPos == -1) { return new Fallback(UNEXPECTED, message); } EvaErrorResponse response = JsonUtils.unmarshal(message.substring(startPos), EvaErrorResponse.class); Contents2 return new Fallback(getByStringValue(response.getError().getErrorCode())); } catch (Exception e) { log.error("unexpected error message from EVA {}", message); log.error(e.getMessage(), e); return new Fallback(UNEXPECTED, message); }}@Data@Builder@Getter@Setter@NoArgsConstructor@AllArgsConstructorpublic class EvaErrorResponse { private Error error;}@Data@Builder@Getter@Setter@NoArgsConstructor@AllArgsConstructorclass Error { private String errorCode; private String errorDesc;} Contents3public class OabResponseDto { private boolean success; private Object result; private String error;{"error":{"errorCode":"WDCS0003","errorDesc":"Resource not available!"}}Fallback generateFallback(String message) { try { /** * example actual response from eva: * {"error":{"errorCode":"WDCS0003","errorDesc":"Resource not available!"}} */ int startPos = message.indexOf("{\"error\":");

HTML view coming soon.

Download PDF for the full formatted version.