Skip to content

apache/accumulo-access

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

80 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Accumulo Access Library

Java library that provides the same functionality, semantics, and syntax as the Apache Accumulo ColumnVisibility and VisibilityEvaluator classes. This functionality is provided in a standalone java library that has no dependencies (for example no Hadoop, Zookeeper, Thrift, etc dependencies).

For a conceptual overview of what an access expression is, see the specification document. See the Getting Started section for an example of how to use this java library.

Public API

The following types constitute the public API of this library. All other types are package private and are not part of the public API.

Getting Started

Add the library to your CLASSPATH. For Maven, use:

<dependencies>
  <dependency>
    <groupId>org.apache.accumulo</groupId>
    <artifactId>accumulo-access</artifactId>
    <version>${version.accumulo-access}</version>
  </dependency>
</dependencies>

Running the Examples

To run AccessExample

mvn clean package
CLASSPATH=$(ls target/accumulo-access-*.jar) java src/test/java/example/AccessExample.java
CLASSPATH=$(ls target/accumulo-access-*.jar) java src/test/java/example/AccessExample.java RED BLUE

Note that data6 is always returned, because it has no access expression. And remember, authorizations are case-sensitive.

To run ParseExamples

mvn clean package
CLASSPATH=$(ls target/accumulo-access-*.jar) java src/test/java/example/ParseExamples.java

For an ANTLRv4 example, see antlr-example integration test's README.

Running the Benchmark

This project includes a JMH Benchmark. To run it:

mvn clean verify -Pbenchmark