This is an automated email from the ASF dual-hosted git repository. domgarguilo pushed a commit to branch replaceAuthorizer in repository https://gitbox.apache.org/repos/asf/accumulo-access.git
commit 790c20eaeead0393edcc6d04d3d1d5f137f98009 Merge: e5c63a5 2da31d3 Author: Dom G <domgargu...@apache.org> AuthorDate: Tue Feb 20 15:35:18 2024 -0500 Merge remote-tracking branch 'upstream/main' into replaceAuthorizer # Conflicts: # src/main/java/org/apache/accumulo/access/AccessEvaluator.java .github/ISSUE_TEMPLATE/post_vote_checklist.md | 41 +++++++ .gitignore | 31 ++--- LICENSE | 9 ++ README.md | 40 ++++++- SPECIFICATION.md | 2 +- contrib/antlr4/README.md | 31 ----- contrib/getting-started/README.md | 98 ---------------- .../src/main/java/gse/AccessExample.java | 66 ----------- pom.xml | 123 +++++++++++++------- src/build/create-release-candidate.sh | 18 +-- src/it/antlr4-example/README.md | 53 +++++++++ .../it/antlr4-example/invoker.properties | 6 +- {contrib/antlr4 => src/it/antlr4-example}/pom.xml | 94 +++------------- .../it/antlr4-example}/src/main/antlr4/Abnf.g4 | 125 ++++++++++----------- .../src/main/antlr4/AccessExpression.g4 | 6 +- .../accumulo/access/antlr/TestDataLoader.java | 6 +- .../accumulo/access/grammar/SpecificationTest.java | 8 +- .../antlr/AccessExpressionAntlrBenchmark.java | 0 .../antlr/AccessExpressionAntlrEvaluator.java | 0 .../grammar/antlr/AccessExpressionAntlrParser.java | 0 .../accumulo/access/grammar/antlr/Antlr4Tests.java | 0 .../getting-started/pom.xml => src/it/settings.xml | 59 +++++----- .../apache/accumulo/access/AccessEvaluator.java | 28 +++-- .../accumulo/access/AccessEvaluatorImpl.java | 2 +- .../access/specification/AccessExpression.abnf | 0 src/test/java/example/AccessExample.java | 86 ++++++++++++++ src/test/java/example/AccessExampleTest.java | 48 ++++++++ .../accumulo/access/AccessEvaluatorTest.java | 3 - .../accumulo/access/AccessExpressionTest.java | 35 ++++++ 29 files changed, 545 insertions(+), 473 deletions(-) diff --cc src/main/java/org/apache/accumulo/access/AccessEvaluator.java index bc6ef3d,1ea4d23..3caafe4 --- a/src/main/java/org/apache/accumulo/access/AccessEvaluator.java +++ b/src/main/java/org/apache/accumulo/access/AccessEvaluator.java @@@ -19,24 -19,13 +19,15 @@@ package org.apache.accumulo.access; import java.util.Collection; +import java.util.List; +import java.util.function.Predicate; /** - * <p> - * Used to decide if an entity with one more sets of authorizations can access zero or more access - * expressions. - * </p> - * <p> - * Note: For performance improvements, especially in cases where expressions are expected to repeat, - * it's recommended to wrap this evaluator with an external caching mechanism, such as Guava's - * cache, to leverage its extensive caching options. Caching is only safe under the assumption that - * for an AccessEvaluator instance, evaluating the same expression multiple times will always yield - * the same result. When considering caching, any environmental factors that might change this - * assumption may need to be mitigated. - * </p> + * This class is used to decide if an entity with a given set of authorizations can access + * subsequent access expressions. * - * Below is an example that should print false and then print true. + * <p> + * For example: * * <pre> * {@code