Merge branch '1.5.2-SNAPSHOT' into 1.6.1-SNAPSHOT Conflicts: core/src/main/java/org/apache/accumulo/core/security/ColumnVisibility.java
Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/f506e2c7 Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/f506e2c7 Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/f506e2c7 Branch: refs/heads/1.6.1-SNAPSHOT Commit: f506e2c735bb8c9b39afec2be948046ed7485f39 Parents: f573a14 9199759 Author: Josh Elser <els...@apache.org> Authored: Thu Jun 26 12:58:36 2014 -0400 Committer: Josh Elser <els...@apache.org> Committed: Thu Jun 26 12:58:36 2014 -0400 ---------------------------------------------------------------------- .../core/security/ColumnVisibility.java | 66 ++++++++++---------- .../accumulo_user_manual/chapters/security.tex | 10 ++- 2 files changed, 41 insertions(+), 35 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/accumulo/blob/f506e2c7/core/src/main/java/org/apache/accumulo/core/security/ColumnVisibility.java ---------------------------------------------------------------------- diff --cc core/src/main/java/org/apache/accumulo/core/security/ColumnVisibility.java index 75091d2,af44ab5..e76b0ef --- a/core/src/main/java/org/apache/accumulo/core/security/ColumnVisibility.java +++ b/core/src/main/java/org/apache/accumulo/core/security/ColumnVisibility.java @@@ -35,6 -35,38 +35,38 @@@ import org.apache.hadoop.io.WritableCom /** * Validate the column visibility is a valid expression and set the visibility for a Mutation. See {@link ColumnVisibility#ColumnVisibility(byte[])} for the * definition of an expression. + * + * <P> + * The expression is a sequence of characters from the set [A-Za-z0-9_-.] along with the - * binary operators "&" and "|" indicating that both operands are necessary, or the either ++ * binary operators "&" and "|" indicating that both operands are necessary, or the either + * is necessary. The following are valid expressions for visibility: + * + * <pre> + * A + * A|B - * (A|B)&(C|D) - * orange|(red&yellow) ++ * (A|B)&(C|D) ++ * orange|(red&yellow) + * </pre> + * + * <P> + * The following are not valid expressions for visibility: + * + * <pre> - * A|B&C ++ * A|B&C + * A=B + * A|B| - * A&|B ++ * A&|B + * () + * ) + * dog|!cat + * </pre> + * + * <P> + * In addition to the base set of visibilities, any character can be used in the expression if it is quoted. If the quoted term contains '"' or '\', then escape + * the character with '\'. The {@link #quote(String)} method can be used to properly quote and escape terms automatically. The following is an example of a quoted term: + * <pre> + * "A#C"<span />&<span />B + * </pre> */ public class ColumnVisibility { @@@ -401,42 -410,10 +433,10 @@@ } /** - * Set the column visibility for a Mutation. - * + * Creates a column visibility for a Mutation. + * * @param expression - * An expression of the rights needed to see this mutation. The expression is a sequence of characters from the set [A-Za-z0-9_-] along with the - * binary operators "&" and "|" indicating that both operands are necessary, or that either is necessary. The following are valid expressions for - * visibility: - * - * <pre> - * A - * A|B - * (A|B)&(C|D) - * orange|(red&yellow) - * - * </pre> - * - * <P> - * The following are not valid expressions for visibility: - * - * <pre> - * A|B&C - * A=B - * A|B| - * A&|B - * () - * ) - * dog|!cat - * </pre> - * - * <P> - * You can use any character you like in your column visibility expression with quoting. If your quoted term contains '"' or '\' then escape - * them with '\'. The {@link #quote(String)} method will properly quote and escape terms for you. - * - * <pre> - * "A#C"<span />&<span />B - * </pre> - * + * An expression of the rights needed to see this mutation. The expression syntax is defined at the class-level documentation */ public ColumnVisibility(String expression) { this(expression.getBytes(Constants.UTF8)); http://git-wip-us.apache.org/repos/asf/accumulo/blob/f506e2c7/docs/src/main/latex/accumulo_user_manual/chapters/security.tex ----------------------------------------------------------------------