Skip to content

Commit 15ae650

Browse files
committed
RANGER-5324: replace iterations with streams in RangerRequestScriptEvaluator - 3
updated getAllTagTypes() to call init() which was removed in earlier commit
1 parent dd8b8c6 commit 15ae650

File tree

2 files changed

+20
-0
lines changed

2 files changed

+20
-0
lines changed

agents-common/src/main/java/org/apache/ranger/plugin/policyengine/RangerRequestScriptEvaluator.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -432,6 +432,8 @@ public String getCurrentTagType() {
432432
}
433433

434434
public Set<String> getAllTagTypes() {
435+
init();
436+
435437
return Collections.unmodifiableSet(tags.keySet());
436438
}
437439

agents-common/src/test/java/org/apache/ranger/plugin/conditionevaluator/RangerRequestScriptEvaluatorTest.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -513,6 +513,24 @@ public void testMultipleTagInstancesOfType() {
513513
}
514514
}
515515

516+
@Test
517+
public void testGetAllTagTypes() {
518+
RangerAccessRequest request = createRequest("test-user", Collections.emptySet(), Collections.emptySet(), Collections.emptyList());
519+
RangerRequestScriptEvaluator evaluator = new RangerRequestScriptEvaluator(request, scriptEngine, false);
520+
521+
Assert.assertEquals(Collections.emptySet(), evaluator.evaluateScript("ctx.getAllTagTypes()"));
522+
523+
request = createRequest("test-user", Collections.emptySet(), Collections.emptySet(), Collections.singletonList(new RangerTag("PII", Collections.emptyMap())));
524+
evaluator = new RangerRequestScriptEvaluator(request, scriptEngine, false);
525+
526+
Assert.assertEquals(Collections.singleton("PII"), evaluator.evaluateScript("ctx.getAllTagTypes()"));
527+
528+
request = createRequest("test-user", Collections.emptySet(), Collections.emptySet(), Arrays.asList(new RangerTag("PII", Collections.emptyMap()), new RangerTag("PCI", Collections.emptyMap())));
529+
evaluator = new RangerRequestScriptEvaluator(request, scriptEngine, false);
530+
531+
Assert.assertEquals(new HashSet<>(Arrays.asList("PCI", "PII")), evaluator.evaluateScript("ctx.getAllTagTypes()"));
532+
}
533+
516534
RangerAccessRequest createRequest(String userName, Set<String> userGroups, Set<String> userRoles, List<RangerTag> resourceTags) {
517535
RangerAccessResource resource = mock(RangerAccessResource.class);
518536

0 commit comments

Comments
 (0)