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


The following commit(s) were added to refs/heads/master by this push:
     new ca8d7fc72 RANGER-4724: updated importServiceTags API to handle missing 
service name in resources
ca8d7fc72 is described below

commit ca8d7fc72bab29ac6a6e866e68bb9a2891eee3c4
Author: Anand Nadar <[email protected]>
AuthorDate: Wed Feb 21 22:20:21 2024 -0800

    RANGER-4724: updated importServiceTags API to handle missing service name 
in resources
    
    Signed-off-by: Madhan Neethiraj <[email protected]>
---
 .../java/org/apache/ranger/rest/ServiceTagsProcessor.java     | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git 
a/security-admin/src/main/java/org/apache/ranger/rest/ServiceTagsProcessor.java 
b/security-admin/src/main/java/org/apache/ranger/rest/ServiceTagsProcessor.java
index f29304036..ecdf504e3 100644
--- 
a/security-admin/src/main/java/org/apache/ranger/rest/ServiceTagsProcessor.java
+++ 
b/security-admin/src/main/java/org/apache/ranger/rest/ServiceTagsProcessor.java
@@ -144,6 +144,10 @@ public class ServiceTagsProcessor {
                                for (int i = 0; i < resources.size(); i++) {
                                        resource = resources.get(i);
 
+                                       if 
(StringUtils.isBlank(resource.getServiceName())) {
+                                               
resource.setServiceName(serviceTags.getServiceName());
+                                       }
+
                                        RangerServiceResource existing          
= null;
                                        String                resourceSignature 
= null;
                                        Long                  resourceId        
= resource.getId();
@@ -178,9 +182,6 @@ public class ServiceTagsProcessor {
                                                perf = 
RangerPerfTracer.getPerfTracer(PERF_LOG_ADD_OR_UPDATE, 
"tags.createOrUpdate_service_resource(" + resourceId + ")");
                                        }
                                        if (existing == null) {
-                                               if 
(StringUtils.isBlank(resource.getServiceName())) {
-                                                       
resource.setServiceName(serviceTags.getServiceName());
-                                               }
                                                resourceInStore = 
tagStore.createServiceResource(resource);
 
                                        } else if 
(StringUtils.isEmpty(resource.getServiceName()) || 
MapUtils.isEmpty(resource.getResourceElements())) {
@@ -515,11 +516,13 @@ public class ServiceTagsProcessor {
                if (CollectionUtils.isNotEmpty(serviceResources)) {
 
                        for (RangerServiceResource serviceResource : 
serviceResources) {
+                               if 
(StringUtils.isBlank(serviceResource.getServiceName())) {
+                                       
serviceResource.setServiceName(serviceTags.getServiceName());
+                               }
 
                                RangerServiceResource objToDelete = null;
 
                                try {
-
                                        if 
(StringUtils.isNotBlank(serviceResource.getGuid())) {
                                                objToDelete = 
tagStore.getServiceResourceByGuid(serviceResource.getGuid());
                                        }

Reply via email to