package com.nis.restful; import java.io.IOException; import java.util.LinkedHashMap; import java.util.Map; import org.springframework.stereotype.Component; import com.fasterxml.jackson.core.JsonGenerationException; import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.ObjectMapper; @SuppressWarnings("rawtypes") @Component public class DefaultRestErrorConverter implements RestConverter { @SuppressWarnings("unchecked") @Override public Map convert(RestResult re) { Map errorMap = new LinkedHashMap(); errorMap.put(RestConstants.REST_SERVICE_HTTP_STATUS, re.getStatus() .value()); errorMap.put(RestConstants.REST_SERVICE_BUSINESS_CODE, re.getBusinessCode() .getValue()); errorMap.put(RestConstants.REST_SERVICE_REASON, re.getBusinessCode() .getErrorReason()); errorMap.put(RestConstants.REST_SERVICE_MSG, re.getMsg()); errorMap.put(RestConstants.TRACE_CODE, re.getTraceCode()); errorMap.put(RestConstants.REST_SERVICE_URI, re.getFromUri()); if(re.getActiveSys() != null){ errorMap.put(RestConstants.REST_SERVICE_ACTIVE_SYS, re.getActiveSys()); } if(re.getLogSource() != null){ errorMap.put(RestConstants.REST_SERVICE_LOG_SOURCE, re.getLogSource()); } return errorMap; } @Override public String convertToJson(RestResult re) { Map errorMap = this.convert(re); ObjectMapper mapper = new ObjectMapper(); try { return mapper.writeValueAsString(errorMap); } catch (JsonGenerationException e) { e.printStackTrace(); } catch (JsonMappingException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return ""; } }