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

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


The following commit(s) were added to refs/heads/master by this push:
     new 1f0b86e38e RANGER-4983 : Ranger Audit Filter for the HBase service is 
not working as expected
1f0b86e38e is described below

commit 1f0b86e38e75fd451e8687b75df6bf4442fc6bdd
Author: Dhaval.Rajpara <[email protected]>
AuthorDate: Thu Jan 23 16:26:32 2025 +0530

    RANGER-4983 : Ranger Audit Filter for the HBase service is not working as 
expected
---
 .../src/views/ServiceManager/ServiceDefinition.jsx |  4 +-
 .../src/views/ServiceManager/ServiceForm.jsx       | 74 +++++++++-------------
 .../views/ServiceManager/ServiceViewDetails.jsx    |  4 +-
 3 files changed, 33 insertions(+), 49 deletions(-)

diff --git 
a/security-admin/src/main/webapp/react-webapp/src/views/ServiceManager/ServiceDefinition.jsx
 
b/security-admin/src/main/webapp/react-webapp/src/views/ServiceManager/ServiceDefinition.jsx
index 188e1a0f53..3fbe68d405 100644
--- 
a/security-admin/src/main/webapp/react-webapp/src/views/ServiceManager/ServiceDefinition.jsx
+++ 
b/security-admin/src/main/webapp/react-webapp/src/views/ServiceManager/ServiceDefinition.jsx
@@ -155,9 +155,9 @@ class ServiceDefinition extends Component {
           {resources[key].isExcludes !== undefined ? (
             <h6 className="d-inline">
               {resources[key].isExcludes ? (
-                <span className="badge bg-dark float-end">Include</span>
-              ) : (
                 <span className="badge bg-dark float-end">Exclude</span>
+              ) : (
+                <span className="badge bg-dark float-end">Include</span>
               )}
             </h6>
           ) : (
diff --git 
a/security-admin/src/main/webapp/react-webapp/src/views/ServiceManager/ServiceForm.jsx
 
b/security-admin/src/main/webapp/react-webapp/src/views/ServiceManager/ServiceForm.jsx
index 3515198cb4..402193a739 100644
--- 
a/security-admin/src/main/webapp/react-webapp/src/views/ServiceManager/ServiceForm.jsx
+++ 
b/security-admin/src/main/webapp/react-webapp/src/views/ServiceManager/ServiceForm.jsx
@@ -226,53 +226,37 @@ class ServiceForm extends Component {
           if (key === "resources" && !isEmpty(value)) {
             obj.resources = {};
 
-            let levels = uniq(map(serviceDef.resources, "level"));
-
-            levels.map((level) => {
-              let resourceObj = find(serviceDef.resources, {
-                level: level,
-                name: value[`resourceName-${level}`]?.name
-              });
-              if (
-                value[`resourceName-${level}`] !== undefined &&
-                value[`value-${level}`] !== undefined
-              ) {
-                obj.resources[value[`resourceName-${level}`].name] = {
-                  values: isArray(value[`value-${level}`])
-                    ? map(value[`value-${level}`], "value")
-                    : [value[`value-${level}`].value]
+            const levels = uniq(map(serviceDef.resources, "level"));
+
+            levels.forEach((level) => {
+              const resourceName = value[`resourceName-${level}`]?.name;
+              const resourceValue = value[`value-${level}`];
+              const isRecursiveSupport = value[`isRecursiveSupport-${level}`];
+              const isExcludesSupport = value[`isExcludesSupport-${level}`];
+
+              if (resourceName && resourceValue !== undefined) {
+                const resourceObj = find(serviceDef.resources, {
+                  level,
+                  name: resourceName
+                });
+
+                obj.resources[resourceName] = {
+                  values: Array.isArray(resourceValue)
+                    ? map(resourceValue, "value")
+                    : [resourceValue.value]
                 };
 
-                if (
-                  value[`isRecursiveSupport-${level}`] !== undefined &&
-                  resourceObj.recursiveSupported
-                ) {
-                  obj.resources[
-                    value[`resourceName-${level}`].name
-                  ].isRecursive = value[`isRecursiveSupport-${level}`];
-                } else if (
-                  value[`isRecursiveSupport-${level}`] === undefined &&
-                  resourceObj.recursiveSupported
-                ) {
-                  obj.resources[
-                    value[`resourceName-${level}`].name
-                  ].isRecursive = resourceObj.recursiveSupported;
+                if (resourceObj?.recursiveSupported) {
+                  obj.resources[resourceName].isRecursive =
+                    isRecursiveSupport !== undefined
+                      ? isRecursiveSupport
+                      : resourceObj.recursiveSupported;
                 }
-
-                if (
-                  value[`isExcludesSupport-${level}`] !== undefined &&
-                  resourceObj.excludesSupported
-                ) {
-                  obj.resources[
-                    value[`resourceName-${level}`].name
-                  ].isExcludes = value[`isExcludesSupport-${level}`];
-                } else if (
-                  value[`isExcludesSupport-${level}`] === undefined &&
-                  resourceObj.excludesSupported
-                ) {
-                  obj.resources[
-                    value[`resourceName-${level}`].name
-                  ].isExcludes = resourceObj.excludesSupported;
+                if (resourceObj?.excludesSupported) {
+                  obj.resources[resourceName].isExcludes =
+                    isExcludesSupport !== undefined
+                      ? !isExcludesSupport
+                      : false;
                 }
               }
             });
@@ -521,7 +505,7 @@ class ServiceForm extends Component {
             );
             if (setResources?.excludesSupported) {
               obj.resources[`isExcludesSupport-${setResources.level}`] =
-                value?.isExcludes != false;
+                value?.isExcludes ? !value.isExcludes : true;
             }
             if (setResources?.recursiveSupported) {
               obj.resources[`isRecursiveSupport-${setResources.level}`] =
diff --git 
a/security-admin/src/main/webapp/react-webapp/src/views/ServiceManager/ServiceViewDetails.jsx
 
b/security-admin/src/main/webapp/react-webapp/src/views/ServiceManager/ServiceViewDetails.jsx
index 9ac234474f..9ee6b2f389 100644
--- 
a/security-admin/src/main/webapp/react-webapp/src/views/ServiceManager/ServiceViewDetails.jsx
+++ 
b/security-admin/src/main/webapp/react-webapp/src/views/ServiceManager/ServiceViewDetails.jsx
@@ -98,9 +98,9 @@ export const ServiceViewDetails = (props) => {
           {resources[key].isExcludes !== undefined ? (
             <h6 className="d-inline">
               {resources[key].isExcludes ? (
-                <span className="badge bg-dark float-end">Include</span>
-              ) : (
                 <span className="badge bg-dark float-end">Exclude</span>
+              ) : (
+                <span className="badge bg-dark float-end">Include</span>
               )}
             </h6>
           ) : (

Reply via email to