From 7af5d47cfeb9b743cda56c9053ff708b8b2dd90d Mon Sep 17 00:00:00 2001
From: "bharathwaj.shankar" <bharathwaj.shankar@trustrace.com>
Date: Mon, 5 Dec 2022 11:31:08 +0530
Subject: [PATCH] LR-251 - BatchService-Identity manager should be optional for
 setup handling in on request handler itself

---
 service/app/modules/OnRequestHandler.java | 13 +++++++++++--
 service/app/util/RequestInterceptor.java  | 10 +---------
 2 files changed, 12 insertions(+), 11 deletions(-)

diff --git a/service/app/modules/OnRequestHandler.java b/service/app/modules/OnRequestHandler.java
index 04cb11c29..3b963086c 100644
--- a/service/app/modules/OnRequestHandler.java
+++ b/service/app/modules/OnRequestHandler.java
@@ -2,6 +2,8 @@ package modules;
 
 import com.fasterxml.jackson.databind.JsonNode;
 import com.fasterxml.jackson.databind.ObjectMapper;
+import com.typesafe.config.ConfigFactory;
+
 import controllers.BaseController;
 import org.apache.commons.lang3.StringUtils;
 import org.sunbird.auth.verifier.AccessTokenValidator;
@@ -60,10 +62,17 @@ public class OnRequestHandler implements ActionCreator {
       @Override
       public CompletionStage<Result> call(Http.Request request) {
         CompletionStage<Result> result = checkForServiceHealth(request);
-        if (result != null) return result;
+          String message = null;
+          if (result != null) {
+              return result;
+          }
+          if (ConfigFactory.load().getBoolean(JsonKey.AUTH_ENABLED)) {
+              message = RequestInterceptor.verifyRequestData(request);
+          } else {
+              message = JsonKey.ANONYMOUS;
+          }
         // Setting Actual userId (requestedBy) and managed userId (requestedFor) placeholders in flash memory to null before processing.
         // Unauthorized, Anonymous, UserID
-        String message = RequestInterceptor.verifyRequestData(request);
         Optional<String> forAuth = request.header(HeaderParam.X_Authenticated_For.getName());
         String childId = null;
         String loggingHeaders = getLoggingHeaders(request);
diff --git a/service/app/util/RequestInterceptor.java b/service/app/util/RequestInterceptor.java
index 9449d94a2..0069d18ce 100644
--- a/service/app/util/RequestInterceptor.java
+++ b/service/app/util/RequestInterceptor.java
@@ -10,9 +10,6 @@ import org.sunbird.common.models.util.JsonKey;
 import org.sunbird.common.models.util.LoggerUtil;
 import org.sunbird.common.models.util.ProjectLogger;
 import org.sunbird.common.request.HeaderParam;
-
-import com.typesafe.config.ConfigFactory;
-
 import play.mvc.Http;
 
 /**
@@ -57,12 +54,7 @@ public class RequestInterceptor {
    *     is returned
    */
   public static String verifyRequestData(Http.Request request) {
-    String clientId = null;
-    if(ConfigFactory.load().getBoolean(JsonKey.AUTH_ENABLED)){
-      clientId = JsonKey.UNAUTHORIZED;
-    }else{
-      clientId = JsonKey.ANONYMOUS;
-    }
+    String clientId = JsonKey.UNAUTHORIZED;
     Optional<String> accessToken = request.header(HeaderParam.X_Authenticated_User_Token.getName());
     Optional<String> authClientToken =
         request.header(HeaderParam.X_Authenticated_Client_Token.getName());
-- 
GitLab