Skip to content
Open
Show file tree
Hide file tree
Changes from 53 commits
Commits
Show all changes
63 commits
Select commit Hold shift + click to select a range
a784c14
updated accumulo-utils to use accumulo-access
Mar 16, 2026
a97921f
refactor in progress
Mar 17, 2026
091811d
compilation fixes
Mar 17, 2026
76f2cbb
fixes
Mar 20, 2026
c315e82
added accumulo-access jar to classpath
Mar 23, 2026
acbc243
temporarily pull snapshot deps from github packages
Mar 24, 2026
d67a933
remove accumulo-utils exclusions
Mar 24, 2026
3f440bd
fix MetadataCachingTest
Mar 24, 2026
5656425
fix markings serialization
Mar 24, 2026
09c3908
Markings refactoring
Mar 25, 2026
6fe36bf
cleanup
Mar 26, 2026
406a914
remove duplicate mergeMarking like methods
Mar 26, 2026
ad2ef6c
rename mf to markingFunctions for consistency
Mar 27, 2026
a1f6fc7
formatting
Mar 30, 2026
e44b837
review feedback
Apr 2, 2026
6eb53b1
update SNAPSHOTs
Apr 2, 2026
cfcc027
add back needed methods
Apr 6, 2026
c0f60aa
tag cloud fixes
Apr 7, 2026
0522773
fix FieldBase and FieldCardinalityBase column visibility
Apr 8, 2026
d13ae1e
cleanup dead marking code
Apr 8, 2026
1e23bf8
fix SecurityMarking interface
Apr 13, 2026
e9ee8e8
marking fixes
Apr 17, 2026
480c1ec
marking class updates
Apr 21, 2026
f8687df
rebase fix
Apr 21, 2026
9ab4f09
restore flatten functions in mapreduce handler
Apr 23, 2026
2b812e8
bugfixes
Apr 28, 2026
7916bce
remove EMPTY_MARKINGS
Apr 28, 2026
745c734
marking combine bugfixes
Apr 30, 2026
04401a5
rebase fixes
Apr 30, 2026
256e8cf
fix MarkingFunctions to return empty ColumnVisibility when no access …
Apr 30, 2026
57267bd
DoucmentTransformer bugfix
Apr 30, 2026
deead2b
more bugfixes
May 1, 2026
717ce37
fix CacheableQueryRowImpl addColumn
May 4, 2026
bf03060
cleanup AccessExpressionUtils and MarkingFunctions.Default usage
May 7, 2026
172c0d7
updating comment in MarkingFunctions
May 7, 2026
07d3f4b
cleanup
May 7, 2026
1358fcd
add unit tests for AccessExpressionMarkings and Utils
May 7, 2026
eb535f2
remove instanceof AccessExpressionMarkings usage
May 7, 2026
8f4fc72
restore translateFromColumnVisibilityForAuths
May 7, 2026
2ecb24c
remove instanceof AccessExpression usage
May 7, 2026
5b757e9
restore previous exception msgs and handling
May 7, 2026
0d1bcd3
dictionary fixes
May 8, 2026
579b0c7
mr self-review changes
May 8, 2026
93db2d3
update microservices to use snapshots
May 11, 2026
8eab1ea
fix ExecutorProperties
May 11, 2026
3e17991
fix: Disable snapshot usage in POM files
May 11, 2026
dbdf6cb
revert microservice parents
May 11, 2026
88d30e7
add protostuff test cases to AccessExpressionMarkingsTest
May 11, 2026
8b3097b
migrate markingsMap to markings in dictionary api and service
May 11, 2026
da2af39
more MR fixes
May 11, 2026
8e5fda5
remove snapshots for unaffected modules
May 12, 2026
c7ca57a
remove extraneous test change
May 12, 2026
1158ca1
use -JFA-20260512-1 modifier in POMs
May 12, 2026
49540a8
fix spotbug issue
May 13, 2026
7956b99
Jeff MR feedback round 1
May 13, 2026
c21f3d9
Revert "use -JFA-20260512-1 modifier in POMs"
May 13, 2026
c07701b
fix XmlElement usage in DefaultEvent and DefaultField for markings
May 14, 2026
9065fc8
Fix: Handle null ColumnVisibility in ModelKeyParser
May 14, 2026
7be1fe8
Fix: Handle null/empty ColumnVisibility in MetadataDescriptionsHelper
May 15, 2026
dc20c60
update accumulo-access-core version
May 15, 2026
3d8ab21
reset microservice versions that did not change
May 21, 2026
fd2c422
reset starters that did not need to change
May 21, 2026
de9dd3d
revert query microservice changes
May 21, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion common-test/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<parent>
<groupId>gov.nsa.datawave</groupId>
<artifactId>datawave-parent</artifactId>
<version>7.39.0-SNAPSHOT</version>
<version>7.39.0-JFA-20260512-1</version>
</parent>
<artifactId>datawave-common-test</artifactId>
<name>${project.artifactId}</name>
Expand Down
2 changes: 1 addition & 1 deletion contrib/datawave-quickstart/docker/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<parent>
<groupId>gov.nsa.datawave</groupId>
<artifactId>datawave-parent</artifactId>
<version>7.39.0-SNAPSHOT</version>
<version>7.39.0-JFA-20260512-1</version>
<relativePath>../../../pom.xml</relativePath>
</parent>
<artifactId>quickstart</artifactId>
Expand Down
2 changes: 1 addition & 1 deletion core/annotation/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<parent>
<groupId>gov.nsa.datawave.core</groupId>
<artifactId>datawave-core-parent</artifactId>
<version>7.39.0-SNAPSHOT</version>
<version>7.39.0-JFA-20260512-1</version>
</parent>
<artifactId>datawave-core-annotation</artifactId>
<properties>
Expand Down
2 changes: 1 addition & 1 deletion core/base-rest-responses/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<parent>
<groupId>gov.nsa.datawave.core</groupId>
<artifactId>datawave-core-parent</artifactId>
<version>7.39.0-SNAPSHOT</version>
<version>7.39.0-JFA-20260512-1</version>
</parent>
<artifactId>base-rest-responses</artifactId>
<name>${project.artifactId}</name>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
package datawave.marking;

import static com.google.common.base.Charsets.UTF_8;
import static datawave.marking.AccessExpressionMarkings.ACCESS;

import java.util.Collections;
import java.util.List;
import java.util.Map;

Expand All @@ -12,7 +11,7 @@
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;

import org.apache.accumulo.core.security.ColumnVisibility;
import org.apache.accumulo.access.AccessExpression;

import com.google.common.base.Preconditions;

Expand All @@ -31,7 +30,7 @@ public void validate(Map<String,List<String>> parameters) throws IllegalArgument
if (null == values) {
throw new IllegalArgumentException("Required parameter " + VISIBILITY_MARKING + " not found");
}
if (values.isEmpty() || values.size() > 1) {
if (values.size() != 1) {
Comment thread
jalphonso marked this conversation as resolved.
throw new IllegalArgumentException("Required parameter " + VISIBILITY_MARKING + " only accepts one value");
}
columnVisibility = values.get(0);
Expand All @@ -47,8 +46,16 @@ public void setColumnVisibility(String columnVisibility) {
}

@Override
public ColumnVisibility toColumnVisibility() {
return new ColumnVisibility(columnVisibility);
public AccessExpression toAccessExpression() {
if (columnVisibility == null || columnVisibility.isEmpty()) {
return ACCESS.newExpression("");
}
return ACCESS.newExpression(columnVisibility);
}

@Override
public Markings<?> toMarkings() {
return AccessExpressionMarkings.builder().accessExpression(toAccessExpression()).build();
}

@Override
Expand All @@ -72,65 +79,29 @@ public boolean equals(Object obj) {
if (this.columnVisibility == null && other.columnVisibility != null) {
return false;
}
if (this.columnVisibility == null && other.columnVisibility == null) {
return true;
}
if (this.columnVisibility.equals(other.columnVisibility)) {
if (this.columnVisibility == null) {
return true;
} else {
return false;
}
return this.columnVisibility.equals(other.columnVisibility);
}
return false;
}

@Override
public String toString() {
return toColumnVisibilityString();
return toAccessExpressionString();
}

@Override
public String toColumnVisibilityString() {
public String toAccessExpressionString() {
if (null == this.columnVisibility) {
return null;
}
return new String(toColumnVisibility().flatten(), UTF_8);
return AccessExpressionUtil.normalize(toAccessExpression()).getExpression();
}

public void clear() {
this.columnVisibility = null;
}

@Override
public Map<String,String> toMap() {
return Collections.singletonMap(VISIBILITY_MARKING, this.columnVisibility);
}

@Override
public void fromMap(Map<String,String> map) {
this.columnVisibility = map.get(VISIBILITY_MARKING);
}

/**
* Turn this set of markings into a serializable string
*
* @return String
*/
@Override
public String mapToString() {
return MarkingFunctions.Encoding.toString(toMap());
}

/**
* Fill this security markings given an encoded string
*
* @param encodedMarkings
*/
@Override
public void fromString(String encodedMarkings) {
Map<String,String> markings = MarkingFunctions.Encoding.fromString(encodedMarkings);
this.columnVisibility = markings.get(VISIBILITY_MARKING);
Preconditions.checkNotNull(columnVisibility);
}

}
Original file line number Diff line number Diff line change
@@ -1,24 +1,16 @@
package datawave.marking;

import java.util.Map;

import org.apache.accumulo.core.security.ColumnVisibility;
import org.apache.accumulo.access.AccessExpression;

import datawave.validation.ParameterValidator;

public interface SecurityMarking extends ParameterValidator {

ColumnVisibility toColumnVisibility() throws MarkingFunctions.Exception;

String toColumnVisibilityString();

Map<String,String> toMap();

void fromMap(Map<String,String> map);
AccessExpression toAccessExpression() throws MarkingFunctions.Exception;

String mapToString();
String toAccessExpressionString();

void fromString(String xmlString);
Markings<?> toMarkings() throws MarkingFunctions.Exception;

void clear();
}
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
package datawave.webservice.query.result.event;

import java.util.Map;
import datawave.marking.Markings;

public interface HasMarkings {

void setMarkings(Map<String,String> markings);
void setMarkings(Markings<?> markings);

Map<String,String> getMarkings();
Markings<?> getMarkings();
}
Comment thread
jalphonso marked this conversation as resolved.
2 changes: 1 addition & 1 deletion core/cached-results/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<parent>
<groupId>gov.nsa.datawave.core</groupId>
<artifactId>datawave-core-parent</artifactId>
<version>7.39.0-SNAPSHOT</version>
<version>7.39.0-JFA-20260512-1</version>
</parent>
<artifactId>datawave-core-cached-results</artifactId>
<name>${project.artifactId}</name>
Expand Down
Loading
Loading