Return-Path: X-Original-To: apmail-accumulo-commits-archive@www.apache.org Delivered-To: apmail-accumulo-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id B37C311C66 for ; Thu, 26 Jun 2014 17:41:42 +0000 (UTC) Received: (qmail 90714 invoked by uid 500); 26 Jun 2014 17:41:42 -0000 Delivered-To: apmail-accumulo-commits-archive@accumulo.apache.org Received: (qmail 90610 invoked by uid 500); 26 Jun 2014 17:41:42 -0000 Mailing-List: contact commits-help@accumulo.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@accumulo.apache.org Delivered-To: mailing list commits@accumulo.apache.org Received: (qmail 90588 invoked by uid 99); 26 Jun 2014 17:41:42 -0000 Received: from tyr.zones.apache.org (HELO tyr.zones.apache.org) (140.211.11.114) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 26 Jun 2014 17:41:42 +0000 Received: by tyr.zones.apache.org (Postfix, from userid 65534) id 461508A0AAB; Thu, 26 Jun 2014 17:41:42 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: elserj@apache.org To: commits@accumulo.apache.org Date: Thu, 26 Jun 2014 17:41:46 -0000 Message-Id: In-Reply-To: <22b1bf3f80a340d3b9409891b9852f60@git.apache.org> References: <22b1bf3f80a340d3b9409891b9852f60@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: [5/7] git commit: Merge branch '1.5.2-SNAPSHOT' into 1.6.1-SNAPSHOT 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 Authored: Thu Jun 26 12:58:36 2014 -0400 Committer: Josh Elser 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. + * + *

+ * 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: + * + *

+  * A
+  * A|B
 - * (A|B)&(C|D)
 - * orange|(red&yellow)
++ * (A|B)&(C|D)
++ * orange|(red&yellow)
+  * 
+ * + *

+ * The following are not valid expressions for visibility: + * + *

 - * A|B&C
++ * A|B&C
+  * A=B
+  * A|B|
 - * A&|B
++ * A&|B
+  * ()
+  * )
+  * dog|!cat
+  * 
+ * + *

+ * 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: + *

+  * "A#C"&B
+  * 
*/ 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: - * - *
-    * A
-    * A|B
-    * (A|B)&(C|D)
-    * orange|(red&yellow)
-    *
-    * 
- * - *

- * The following are not valid expressions for visibility: - * - *

-    * A|B&C
-    * A=B
-    * A|B|
-    * A&|B
-    * ()
-    * )
-    * dog|!cat
-    * 
- * - *

- * 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. - * - *

-    * "A#C"&B
-    * 
- * + * 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 ----------------------------------------------------------------------