diff --git a/src/main/java/com/iemr/tm/utils/RestTemplateUtil.java b/src/main/java/com/iemr/tm/utils/RestTemplateUtil.java index d14556a0..80690e78 100644 --- a/src/main/java/com/iemr/tm/utils/RestTemplateUtil.java +++ b/src/main/java/com/iemr/tm/utils/RestTemplateUtil.java @@ -50,4 +50,35 @@ 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); + headers.add(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON_VALUE + ";charset=utf-8"); + 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/tm/utils/http/HttpUtils.java b/src/main/java/com/iemr/tm/utils/http/HttpUtils.java index bbb5a0df..a34ee887 100644 --- a/src/main/java/com/iemr/tm/utils/http/HttpUtils.java +++ b/src/main/java/com/iemr/tm/utils/http/HttpUtils.java @@ -28,6 +28,7 @@ import javax.ws.rs.core.MediaType; +import com.iemr.tm.utils.RestTemplateUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.http.HttpEntity; @@ -57,8 +58,13 @@ public HttpUtils() { } } + + public String get(String uri) { String body; + HttpHeaders localheaders = new HttpHeaders(); + localheaders.add("Content-Type", "application/json"); + RestTemplateUtil.getJwttokenFromHeaders(localheaders); HttpEntity requestEntity = new HttpEntity(headers); ResponseEntity responseEntity = rest.exchange(uri, HttpMethod.GET, requestEntity, String.class); setStatus((HttpStatus) responseEntity.getStatusCode()); @@ -66,6 +72,7 @@ public String get(String uri) { return body; } + public String get(String uri, HashMap header) { String body; HttpHeaders headers = new HttpHeaders();