org.apache.accumulo.core.security
Class ColumnVisibility

java.lang.Object
  extended by org.apache.accumulo.core.security.ColumnVisibility

public class ColumnVisibility
extends java.lang.Object

Validate the column visibility is a valid expression and set the visibility for a Mutation. See ColumnVisibility(byte[]) for the definition of an expression.


Nested Class Summary
static class ColumnVisibility.Node
           
static class ColumnVisibility.NodeComparator
           
static class ColumnVisibility.NodeType
           
 
Constructor Summary
ColumnVisibility()
          Empty visibility.
ColumnVisibility(byte[] expression)
          Set the column visibility for a Mutation.
ColumnVisibility(java.lang.String expression)
          See ColumnVisibility(byte[])
ColumnVisibility(org.apache.hadoop.io.Text expression)
           
 
Method Summary
 boolean equals(ColumnVisibility otherLe)
          Compares two ColumnVisibilities for string equivalence, not as a meaningful comparison of terms and conditions.
 boolean equals(java.lang.Object obj)
          See equals(ColumnVisibility)
 byte[] flatten()
           
 byte[] getExpression()
          Accessor for the underlying byte string.
 ColumnVisibility.Node getParseTree()
           
 int hashCode()
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ColumnVisibility

public ColumnVisibility()
Empty visibility. Normally, elements with empty visibility can be seen by everyone. Though, one could change this behavior with filters.


ColumnVisibility

public ColumnVisibility(java.lang.String expression)
See ColumnVisibility(byte[])

Parameters:
expression -

ColumnVisibility

public ColumnVisibility(org.apache.hadoop.io.Text expression)

ColumnVisibility

public ColumnVisibility(byte[] expression)
Set the column visibility for a Mutation.

Parameters:
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 the 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
 
Method Detail

getExpression

public byte[] getExpression()
Accessor for the underlying byte string.

Returns:
byte array representation of a visibility expression

flatten

public byte[] flatten()

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

equals

public boolean equals(java.lang.Object obj)
See equals(ColumnVisibility)

Overrides:
equals in class java.lang.Object

equals

public boolean equals(ColumnVisibility otherLe)
Compares two ColumnVisibilities for string equivalence, not as a meaningful comparison of terms and conditions.


hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

getParseTree

public ColumnVisibility.Node getParseTree()


Copyright © 2012 The Apache Software Foundation. All Rights Reserved.