diff --git a/src/main/java/com/iemr/admin/utils/RestTemplateUtil.java b/src/main/java/com/iemr/admin/utils/RestTemplateUtil.java index 820ca4b..e116057 100644 --- a/src/main/java/com/iemr/admin/utils/RestTemplateUtil.java +++ b/src/main/java/com/iemr/admin/utils/RestTemplateUtil.java @@ -25,14 +25,9 @@ public static HttpEntity createRequestEntity(Object body, String authori return new HttpEntity<>(body, headers); } HttpServletRequest requestHeader = servletRequestAttributes.getRequest(); - String jwtTokenFromCookie = null; - try { - jwtTokenFromCookie = CookieUtil.getJwtTokenFromCookie(requestHeader); - - } catch (Exception e) { - logger.error("Error while getting jwtToken from Cookie" + e.getMessage() ); - } - + + String jwtTokenFromCookie = extractJwttoken(requestHeader); + MultiValueMap headers = new LinkedMultiValueMap<>(); headers.add(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON_VALUE + ";charset=utf-8"); if(null != UserAgentContext.getUserAgent()) { @@ -49,4 +44,34 @@ public static HttpEntity createRequestEntity(Object body, String authori return new HttpEntity<>(body, headers); } + private static String extractJwttoken(HttpServletRequest requestHeader) { + String jwtTokenFromCookie = null; + try { + jwtTokenFromCookie = CookieUtil.getJwtTokenFromCookie(requestHeader); + + } catch (Exception e) { + logger.error("Error while getting jwtToken from Cookie" + e.getMessage() ); + } + return jwtTokenFromCookie; + } + + public static void getJwttokenFromHeaders(HttpHeaders headers) { + ServletRequestAttributes servletRequestAttributes = ((ServletRequestAttributes) RequestContextHolder + .getRequestAttributes()); + if(servletRequestAttributes == null) { + return; + } + HttpServletRequest requestHeader = servletRequestAttributes.getRequest(); + String jwtTokenFromCookie = extractJwttoken(requestHeader); + if (null != UserAgentContext.getUserAgent()) { + headers.add(HttpHeaders.USER_AGENT, UserAgentContext.getUserAgent()); + } + if (null != jwtTokenFromCookie) { + headers.add(HttpHeaders.COOKIE, Constants.JWT_TOKEN+"="+jwtTokenFromCookie); + } else if (null != requestHeader.getHeader(Constants.JWT_TOKEN)) { + headers.add(Constants.JWT_TOKEN, requestHeader.getHeader(Constants.JWT_TOKEN)); + } + + } + } \ No newline at end of file diff --git a/src/main/java/com/iemr/admin/utils/http/HttpUtils.java b/src/main/java/com/iemr/admin/utils/http/HttpUtils.java index 818b441..25d3d08 100644 --- a/src/main/java/com/iemr/admin/utils/http/HttpUtils.java +++ b/src/main/java/com/iemr/admin/utils/http/HttpUtils.java @@ -37,6 +37,7 @@ import org.springframework.stereotype.Component; import org.springframework.web.client.RestTemplate; +import com.iemr.admin.utils.RestTemplateUtil; import com.sun.jersey.multipart.FormDataBodyPart; import com.sun.jersey.multipart.FormDataMultiPart; @@ -76,7 +77,10 @@ public HttpUtils() { public String get(String uri) { String body; - HttpEntity requestEntity = new HttpEntity("", headers); + HttpHeaders localheaders = new HttpHeaders(); + localheaders.add("Content-Type", "application/json"); + RestTemplateUtil.getJwttokenFromHeaders(localheaders); + HttpEntity requestEntity = new HttpEntity("", localheaders); ResponseEntity responseEntity = rest.exchange(uri, HttpMethod.GET, requestEntity, String.class); setStatus((HttpStatus) responseEntity.getStatusCode()); // if (status == HttpStatus.OK){ @@ -98,6 +102,7 @@ public String get(String uri, HashMap header) { } else { headers.add("Content-Type", MediaType.APPLICATION_JSON); } + RestTemplateUtil.getJwttokenFromHeaders(headers); HttpEntity requestEntity = new HttpEntity("", headers); ResponseEntity responseEntity = rest.exchange(uri, HttpMethod.GET, requestEntity, String.class); setStatus((HttpStatus) responseEntity.getStatusCode()); @@ -107,6 +112,7 @@ public String get(String uri, HashMap header) { public String post(String uri, String json) { String body; + RestTemplateUtil.getJwttokenFromHeaders(headers); HttpEntity requestEntity = new HttpEntity(json, headers); ResponseEntity responseEntity = rest.exchange(uri, HttpMethod.POST, requestEntity, String.class); setStatus((HttpStatus) responseEntity.getStatusCode()); @@ -126,6 +132,7 @@ public String post(String uri, String data, HashMap header) { if (header.containsKey("X-APIkey-Header")) { headers.add("X-APIkey-Header", header.get("X-APIkey-Header").toString()); } + RestTemplateUtil.getJwttokenFromHeaders(headers); // headers.add("Content-Type", MediaType.APPLICATION_JSON); ResponseEntity responseEntity = new ResponseEntity(HttpStatus.BAD_REQUEST); HttpEntity requestEntity; @@ -137,6 +144,7 @@ public String post(String uri, String data, HashMap header) { } public String put(String uri, String json) { String body; + RestTemplateUtil.getJwttokenFromHeaders(headers); HttpEntity requestEntity = new HttpEntity(json, headers); ResponseEntity responseEntity = rest.exchange(uri, HttpMethod.PUT, requestEntity, String.class); setStatus((HttpStatus) responseEntity.getStatusCode()); @@ -159,6 +167,7 @@ public String put(String uri, String data, HashMap header) { // headers.add("Content-Type", MediaType.APPLICATION_JSON); ResponseEntity responseEntity = new ResponseEntity(HttpStatus.BAD_REQUEST); HttpEntity requestEntity; + RestTemplateUtil.getJwttokenFromHeaders(headers); requestEntity = new HttpEntity(data, headers); responseEntity = rest.exchange(uri, HttpMethod.PUT, requestEntity, String.class); setStatus((HttpStatus) responseEntity.getStatusCode()); @@ -188,6 +197,7 @@ public String uploadFile(String uri, String data, HashMap header multiPart.bodyPart(filePart); multiPart.field("docPath", data); headers.add("Content-Type", MediaType.APPLICATION_JSON); + RestTemplateUtil.getJwttokenFromHeaders(headers); requestEntity = new HttpEntity(multiPart, headers);// new // HttpEntity(multiPart, // headers);