Skip to content

Commit e72fd54

Browse files
author
Joe Alphonso
committed
tag cloud fixes
1 parent 4cd761c commit e72fd54

3 files changed

Lines changed: 11 additions & 9 deletions

File tree

warehouse/keyword-common/src/main/java/datawave/util/keyword/DefaultTagCloudUtils.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
import java.util.Set;
1212
import java.util.stream.Collectors;
1313

14-
import org.apache.accumulo.access.AccessExpression;
1514
import org.apache.commons.lang3.StringUtils;
1615

1716
import datawave.marking.AccessExpressionUtil;
@@ -27,14 +26,14 @@ public class DefaultTagCloudUtils implements TagCloudUtils, Serializable {
2726
private static final String MULTI_VALUE_SEPARATOR = ",";
2827

2928
@Override
30-
public AccessExpression generateCombinedVisibility(Set<String> visibilities) {
29+
public Markings<?> generateCombinedVisibility(Set<String> visibilities) {
3130
if (visibilities == null || visibilities.isEmpty()) {
3231
return null;
3332
}
3433
Set<Markings<?>> markings = visibilities.stream().map(v -> AccessExpressionUtil.toAccessExpressionMarkings(ACCESS.newExpression(v)))
3534
.collect(Collectors.toSet());
3635
try {
37-
return AccessExpressionUtil.toAccessExpression(AccessExpressionUtil.combine(new MarkingFunctions.Default(), markings));
36+
return AccessExpressionUtil.combine(new MarkingFunctions.Default(), markings);
3837
} catch (MarkingFunctions.Exception e) {
3938
throw new IllegalArgumentException("Failed to combine visibilities", e);
4039
}

warehouse/keyword-common/src/main/java/datawave/util/keyword/TagCloud.java

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,9 @@
1818

1919
import com.google.gson.Gson;
2020

21+
import datawave.marking.AccessExpressionMarkings;
22+
import datawave.marking.Markings;
23+
2124
/** A tag cloud - a collection of tags that have a keyword, score, frequency and list of sources from which they originated */
2225
public class TagCloud {
2326

@@ -42,9 +45,9 @@ public class TagCloud {
4245
* @param results
4346
* the entries that belong in the tag cloud.
4447
*/
45-
protected TagCloud(Map<String,String> metadata, AccessExpression visibility, SortedSet<TagCloudEntry> results) {
48+
protected TagCloud(Map<String,String> metadata, Markings<?> visibility, SortedSet<TagCloudEntry> results) {
4649
this.metadata = metadata;
47-
this.visibility = (visibility != null) ? visibility.getExpression() : "";
50+
this.visibility = (visibility != null) ? ((AccessExpressionMarkings) visibility).getMarkings().getExpression() : "";
4851
this.results = results;
4952
}
5053

@@ -221,7 +224,7 @@ public List<TagCloud> build() {
221224
final SortedSet<TagCloudEntry> results = new TreeSet<>(comparator);
222225
results.addAll(e.getValue());
223226
String partition = getPartition(e.getKey());
224-
AccessExpression visibility = utils.generateCombinedVisibility(visibilities.get(partition));
227+
Markings<?> visibility = utils.generateCombinedVisibility(visibilities.get(partition));
225228
Map<String,String> tagCloudMetadata = utils.generateCombinedMetadata(this.metadata.get(partition));
226229
tagClouds.add(new TagCloud(tagCloudMetadata, visibility, results));
227230
}

warehouse/keyword-common/src/main/java/datawave/util/keyword/TagCloudUtils.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import java.util.Map;
66
import java.util.Set;
77

8-
import org.apache.accumulo.access.AccessExpression;
8+
import datawave.marking.Markings;
99

1010
/**
1111
* Interface for pluggable utilities for generating tag clouds, includes mechanisms to partition keywords into separate tag clouds, combine or merge visibility
@@ -17,9 +17,9 @@ public interface TagCloudUtils {
1717
*
1818
* @param visibilities
1919
* a set of valid visibility strings.
20-
* @return a combined {@link AccessExpression}, or {@code null} if there are no visibilities
20+
* @return a combined {@link Markings}, or {@code null} if there are no visibilities
2121
*/
22-
AccessExpression generateCombinedVisibility(Set<String> visibilities);
22+
Markings<?> generateCombinedVisibility(Set<String> visibilities);
2323

2424
/**
2525
* Aggregate metadata from multiple sources, combining multi-valued entries into a flattened string

0 commit comments

Comments
 (0)