This is an automated email from the ASF dual-hosted git repository.

madhan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ranger.git

commit 168613e7490f0c77826de8a833ff8e6de8219e71
Author: princeap173 <[email protected]>
AuthorDate: Wed Feb 7 09:52:47 2024 +0530

    RANGER-4644: updated access audit UI to fix error in rendering GDS policy 
details
    
    Signed-off-by: Madhan Neethiraj <[email protected]>
---
 .../src/main/webapp/react-webapp/src/App.jsx          | 19 ++++++++++++++++++-
 .../main/webapp/react-webapp/src/utils/appState.js    |  3 ++-
 .../views/AuditEvent/AdminLogs/PolicyViewDetails.jsx  | 14 ++++++++++----
 3 files changed, 30 insertions(+), 6 deletions(-)

diff --git a/security-admin/src/main/webapp/react-webapp/src/App.jsx 
b/security-admin/src/main/webapp/react-webapp/src/App.jsx
index cd66839b1..bf3780792 100755
--- a/security-admin/src/main/webapp/react-webapp/src/App.jsx
+++ b/security-admin/src/main/webapp/react-webapp/src/App.jsx
@@ -167,6 +167,7 @@ export default class App extends Component {
     let getServiceDefData = [];
     let resourceServiceDef = [];
     let tagServiceDef = [];
+    let gdsServiceDef = {};
     let serviceDefUrl = "plugins/definitions";
 
     try {
@@ -209,7 +210,23 @@ export default class App extends Component {
         "id"
       );
 
-      setServiceDef(resourceServiceDef, tagServiceDef, getServiceDefData);
+      try {
+        let resp = await fetchApi({
+          url: `plugins/definitions/name/gds`
+        });
+        gdsServiceDef = resp.data;
+      } catch (error) {
+        console.error(
+          `Error occurred while fetching GDS Service Definition or CSRF 
headers! ${error}`
+        );
+      }
+
+      setServiceDef(
+        resourceServiceDef,
+        tagServiceDef,
+        gdsServiceDef,
+        getServiceDefData
+      );
     } catch (error) {
       console.error(
         `Error occurred while fetching serviceDef details ! ${error}`
diff --git a/security-admin/src/main/webapp/react-webapp/src/utils/appState.js 
b/security-admin/src/main/webapp/react-webapp/src/utils/appState.js
index 938cf9b2d..de8275a2b 100644
--- a/security-admin/src/main/webapp/react-webapp/src/utils/appState.js
+++ b/security-admin/src/main/webapp/react-webapp/src/utils/appState.js
@@ -32,9 +32,10 @@ function getServiceDef() {
   return serviceDefData;
 }
 
-function setServiceDef(serviceDef, tagServiceDef, allServiceDefs) {
+function setServiceDef(serviceDef, tagServiceDef, gdsServiceDef, 
allServiceDefs) {
   serviceDefData.serviceDefs = serviceDef;
   serviceDefData.tagServiceDefs = tagServiceDef;
+  serviceDefData.gdsServiceDef = gdsServiceDef;
   serviceDefData.allServiceDefs = allServiceDefs;
 }
 
diff --git 
a/security-admin/src/main/webapp/react-webapp/src/views/AuditEvent/AdminLogs/PolicyViewDetails.jsx
 
b/security-admin/src/main/webapp/react-webapp/src/views/AuditEvent/AdminLogs/PolicyViewDetails.jsx
index efd94c188..b8e4650f7 100644
--- 
a/security-admin/src/main/webapp/react-webapp/src/views/AuditEvent/AdminLogs/PolicyViewDetails.jsx
+++ 
b/security-admin/src/main/webapp/react-webapp/src/views/AuditEvent/AdminLogs/PolicyViewDetails.jsx
@@ -33,7 +33,7 @@ export function PolicyViewDetails(props) {
   const [loader, SetLoader] = useState(true);
   const [serviceDef, setServiceDef] = useState({});
   const { updateServices } = props;
-  let { allServiceDefs } = getServiceDef();
+  let { allServiceDefs, gdsServiceDef } = getServiceDef();
   const isMultiResources = true;
 
   useEffect(() => {
@@ -77,9 +77,15 @@ export function PolicyViewDetails(props) {
     } catch (error) {
       console.error(`eventTime can not be undefined ${error}`);
     }
-    accessLogsServiceDef = allServiceDefs?.find((servicedef) => {
-      return servicedef.name == accesslogs?.data?.serviceType;
-    });
+
+    if (accesslogs?.data?.serviceType == "gds") {
+      accessLogsServiceDef = gdsServiceDef;
+    } else {
+      accessLogsServiceDef = allServiceDefs?.find((servicedef) => {
+        return servicedef.name == accesslogs?.data?.serviceType;
+      });
+    }
+
     setAccess(accesslogs?.data);
     setServiceDef(accessLogsServiceDef);
     SetLoader(false);

Reply via email to