You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by do...@apache.org on 2024/02/20 20:35:51 UTC
(accumulo-access) 01/02: Merge remote-tracking branch 'upstream/main' into replaceAuthorizer
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 <do...@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