This is an automated email from the ASF dual-hosted git repository. dlmarion pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/accumulo-access.git
The following commit(s) were added to refs/heads/main by this push: new 4aa573a Add javadoc about AccessExpression normalization (#77) 4aa573a is described below commit 4aa573a55ecd289a8522cfd17cb100061f1f1f9b Author: Dave Marion <dlmar...@apache.org> AuthorDate: Mon Jul 8 17:01:20 2024 -0400 Add javadoc about AccessExpression normalization (#77) Co-authored-by: Dom G. <domgargu...@apache.org> --- src/main/java/org/apache/accumulo/access/AccessExpression.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/main/java/org/apache/accumulo/access/AccessExpression.java b/src/main/java/org/apache/accumulo/access/AccessExpression.java index 2308bd8..6bb48e1 100644 --- a/src/main/java/org/apache/accumulo/access/AccessExpression.java +++ b/src/main/java/org/apache/accumulo/access/AccessExpression.java @@ -25,6 +25,14 @@ import java.io.Serializable; * of this class should wrap an immutable, validated access expression. If passing access * expressions as arguments in code, consider using this type instead of a String. The advantage of * passing this type over a String is that its known to be a valid expression. + * <p> + * Normalization removes duplicates, sorts, flattens, and removes unneeded parentheses or quotes in + * the expression. Normalization is an optional process that the user can choose to apply when + * constructing an AccessExpression. The AccessEvaluator has the ability to short-circuit + * evaluation, for example when the left hand side of an OR expression is valid, then it won't need + * to evaluate the right side. The user may not want to perform normalization if they are + * constructing their AccessExpressions to take advantage of short-circuit feature as it could + * re-order the tokens or predicates in the expression. * * <p> * Below is an example of how to use this API.