You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by dl...@apache.org on 2024/01/31 13:13:25 UTC
(accumulo-access) branch main updated: Minor changes to source and pom based on review (#36)
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 ed9ff06 Minor changes to source and pom based on review (#36)
ed9ff06 is described below
commit ed9ff06d5dfc01bb1ef111e731ad8abe7c1addd0
Author: Dave Marion <dl...@apache.org>
AuthorDate: Wed Jan 31 08:13:20 2024 -0500
Minor changes to source and pom based on review (#36)
---
pom.xml | 6 ------
src/main/java/org/apache/accumulo/access/AccessEvaluator.java | 3 +++
src/main/java/org/apache/accumulo/access/AccessEvaluatorImpl.java | 4 ++--
src/main/java/org/apache/accumulo/access/AccessExpression.java | 3 +++
src/main/java/org/apache/accumulo/access/Authorizations.java | 4 ++++
src/main/java/org/apache/accumulo/access/BytesWrapper.java | 8 +++++---
6 files changed, 17 insertions(+), 11 deletions(-)
diff --git a/pom.xml b/pom.xml
index d9aab1d..d455c3e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -258,18 +258,12 @@
<failOnError>true</failOnError>
<includeTests>true</includeTests>
<maxRank>20</maxRank>
- <jvmArgs>-Dcom.overstock.findbugs.ignore=com.google.common.util.concurrent.RateLimiter,com.google.common.hash.Hasher,com.google.common.hash.HashCode,com.google.common.hash.HashFunction,com.google.common.hash.Hashing,com.google.common.cache.Cache,com.google.common.io.CountingOutputStream,com.google.common.io.ByteStreams,com.google.common.cache.LoadingCache,com.google.common.base.Stopwatch,com.google.common.cache.RemovalNotification,com.google.common.util.concurrent.Uninterruptib [...]
<plugins combine.children="append">
<plugin>
<groupId>com.h3xstream.findsecbugs</groupId>
<artifactId>findsecbugs-plugin</artifactId>
<version>1.12.0</version>
</plugin>
- <plugin>
- <groupId>com.overstock.findbugs</groupId>
- <artifactId>library-detectors</artifactId>
- <version>1.2.0</version>
- </plugin>
</plugins>
</configuration>
<executions>
diff --git a/src/main/java/org/apache/accumulo/access/AccessEvaluator.java b/src/main/java/org/apache/accumulo/access/AccessEvaluator.java
index 14d498b..5b86208 100644
--- a/src/main/java/org/apache/accumulo/access/AccessEvaluator.java
+++ b/src/main/java/org/apache/accumulo/access/AccessEvaluator.java
@@ -47,6 +47,9 @@ import java.util.List;
* </pre>
*
* <p>
+ * Instances of this class are thread-safe.
+ *
+ * <p>
* Note: The underlying implementation uses UTF-8 when converting between bytes and Strings.
*
* @see <a href="https://github.com/apache/accumulo-access">Accumulo Access Documentation</a>
diff --git a/src/main/java/org/apache/accumulo/access/AccessEvaluatorImpl.java b/src/main/java/org/apache/accumulo/access/AccessEvaluatorImpl.java
index 0885395..66adb96 100644
--- a/src/main/java/org/apache/accumulo/access/AccessEvaluatorImpl.java
+++ b/src/main/java/org/apache/accumulo/access/AccessEvaluatorImpl.java
@@ -38,9 +38,9 @@ final class AccessEvaluatorImpl implements AccessEvaluator {
private static final byte[] EMPTY = new byte[0];
- private final ThreadLocal<BytesWrapper> lookupWrappers =
+ private static final ThreadLocal<BytesWrapper> lookupWrappers =
ThreadLocal.withInitial(() -> new BytesWrapper(EMPTY));
- private final ThreadLocal<Tokenizer> tokenizers =
+ private static final ThreadLocal<Tokenizer> tokenizers =
ThreadLocal.withInitial(() -> new Tokenizer(EMPTY));
static Collection<List<byte[]>> convert(Collection<Authorizations> authorizationSets) {
diff --git a/src/main/java/org/apache/accumulo/access/AccessExpression.java b/src/main/java/org/apache/accumulo/access/AccessExpression.java
index f2dd07e..84d8df9 100644
--- a/src/main/java/org/apache/accumulo/access/AccessExpression.java
+++ b/src/main/java/org/apache/accumulo/access/AccessExpression.java
@@ -69,6 +69,9 @@ package org.apache.accumulo.access;
* </pre>
*
* <p>
+ * Instances of this class are thread-safe.
+ *
+ * <p>
* Note: The underlying implementation uses UTF-8 when converting between bytes and Strings.
*
* @see <a href="https://github.com/apache/accumulo-access">Accumulo Access Documentation</a>
diff --git a/src/main/java/org/apache/accumulo/access/Authorizations.java b/src/main/java/org/apache/accumulo/access/Authorizations.java
index 8b60cd8..f1b1640 100644
--- a/src/main/java/org/apache/accumulo/access/Authorizations.java
+++ b/src/main/java/org/apache/accumulo/access/Authorizations.java
@@ -24,6 +24,10 @@ import java.util.Set;
/**
* An immutable collection of authorization strings.
*
+ * <p>
+ * Instances of this class are thread-safe.
+ *
+ * <p>
* Note: The underlying implementation uses UTF-8 when converting between bytes and Strings.
*
* @since 1.0.0
diff --git a/src/main/java/org/apache/accumulo/access/BytesWrapper.java b/src/main/java/org/apache/accumulo/access/BytesWrapper.java
index ebf4396..069a66f 100644
--- a/src/main/java/org/apache/accumulo/access/BytesWrapper.java
+++ b/src/main/java/org/apache/accumulo/access/BytesWrapper.java
@@ -35,9 +35,7 @@ final class BytesWrapper implements Comparable<BytesWrapper> {
* @param data byte data
*/
public BytesWrapper(byte[] data) {
- this.data = data;
- this.offset = 0;
- this.length = data.length;
+ set(data, 0, data.length);
}
/**
@@ -115,6 +113,10 @@ final class BytesWrapper implements Comparable<BytesWrapper> {
return new String(data, offset, length, UTF_8);
}
+ /*
+ * Wraps the given byte[] and captures the current offset and length. This method does *not* make
+ * a copy of the input buffer
+ */
void set(byte[] data, int offset, int length) {
if (offset < 0) {
throw new IllegalArgumentException("Offset cannot be negative. length = " + offset);