Skip to content

Commit

Permalink
remove NotNull
Browse files Browse the repository at this point in the history
  • Loading branch information
StigNorland committed Dec 4, 2023
1 parent 8df7984 commit 2babc6a
Show file tree
Hide file tree
Showing 9 changed files with 33 additions and 56 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,6 @@
import no.unit.nva.search2.enums.ParameterKey;
import no.unit.nva.search2.enums.ResourceParameter;
import nva.commons.core.JacocoGenerated;
import org.jetbrains.annotations.NotNull;
import org.opensearch.index.query.BoolQueryBuilder;
import org.opensearch.index.query.QueryBuilders;
import org.opensearch.search.builder.SearchSourceBuilder;
Expand Down Expand Up @@ -111,7 +110,6 @@ protected ResourceParameter getFieldsKey() {
return FIELDS;
}

@NotNull
@Override
protected String[] fieldsToKeyNames(String field) {
return ALL.equals(field) || isNull(field)
Expand Down Expand Up @@ -196,7 +194,9 @@ protected void setValue(String key, String value) {
TITLE, TITLE_NOT, TITLE_SHOULD,
TOP_LEVEL_ORGANIZATION,
UNIT, UNIT_NOT, UNIT_SHOULD,
USER, USER_NOT, USER_SHOULD -> query.setSearchingValue(qpKey, value);
USER, USER_NOT, USER_SHOULD,
USER_AFFILIATION, USER_AFFILIATION_NOT, USER_AFFILIATION_SHOULD ->
query.setSearchingValue(qpKey, value);
case LANG -> {
// ignore and continue
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,21 +1,23 @@
package no.unit.nva.search2.common;

import static no.unit.nva.search2.common.AggregationFormat.Constants.BUCKETS;
import static no.unit.nva.search2.constant.Patterns.PATTERN_IS_DOC_COUNT_ERROR_UPPER_BOUND;
import static no.unit.nva.search2.constant.Patterns.PATTERN_IS_SUM_OTHER_DOC_COUNT;
import static no.unit.nva.search2.constant.Patterns.PATTERN_IS_WORD_ENDING_WITH_HASHTAG;
import static no.unit.nva.search2.constant.Words.BUCKETS;
import static no.unit.nva.search2.constant.Words.COUNT;
import static no.unit.nva.search2.constant.Words.ENGLISH_CODE;
import static no.unit.nva.search2.constant.Words.ID;
import static no.unit.nva.search2.constant.Words.KEY;
import static no.unit.nva.search2.constant.Words.LABELS;
import static no.unit.nva.search2.constant.Words.NAME;
import static no.unit.nva.search2.constant.Words.SLASH;
import static no.unit.nva.search2.constant.Words.ZERO;
import static nva.commons.core.StringUtils.EMPTY_STRING;
import com.fasterxml.jackson.databind.JsonNode;
import com.google.common.collect.Streams;
import java.util.Map;
import java.util.Optional;
import no.unit.nva.commons.json.JsonUtils;
import org.jetbrains.annotations.NotNull;

public final class AggregationFormat {
public static JsonNode apply(JsonNode aggregations) {
Expand Down Expand Up @@ -44,12 +46,10 @@ public static JsonNode apply(JsonNode aggregations) {
return outputAggregationNode;
}

@NotNull
private static Map.Entry<String, JsonNode> getJsonNodeEntry(Map.Entry<String, JsonNode> entry) {
return Map.entry(getNormalizedFieldName(entry.getKey()), getBucketOrValue(entry.getValue()));
}

@NotNull
private static Map.Entry<String, JsonNode> getNormalizedJsonNodeEntry(Map.Entry<String, JsonNode> entry) {
return Map.entry(getNormalizedFieldName(entry.getKey()), entry.getValue());
}
Expand Down Expand Up @@ -94,25 +94,22 @@ private static JsonNode formatLabels(JsonNode value) {
return outputAggregationNode;
}

@NotNull
private static String getNormalizedFieldName(String fieldName) {
return Optional.ofNullable(Constants.AGGREGATION_FIELDS_TO_CHANGE.get(fieldName))
.orElse(fieldName.replaceFirst(Constants.PATTERN_IS_WORD_ENDING_WITH_HASHTAG, EMPTY_STRING));
.orElse(fieldName.replaceFirst(PATTERN_IS_WORD_ENDING_WITH_HASHTAG, EMPTY_STRING));
}

static final class Constants {

public static final String SLASH = "/";
public static final String BUCKETS = "buckets";

public static final String BUCKETS_PTR = SLASH + BUCKETS;
public static final String BUCKETS_0_KEY_PTR = SLASH + BUCKETS + SLASH + ZERO + SLASH + "key";
public static final String BUCKETS_0_KEY_PTR = SLASH + BUCKETS + SLASH + ZERO + SLASH + KEY;
public static final String ID_BUCKETS = SLASH + ID + SLASH + BUCKETS;
public static final String PATTERN_IS_WORD_ENDING_WITH_HASHTAG = "[A-za-z0-9]*#";

private static final Map<String, String> AGGREGATION_FIELDS_TO_CHANGE = Map.of(
private static final Map<String, String> AGGREGATION_FIELDS_TO_CHANGE =
Map.of(
"docCount", COUNT,
"doc_count", COUNT);
"doc_count", COUNT
);
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -10,27 +10,23 @@
import no.unit.nva.search.models.UsernamePasswordWrapper;
import nva.commons.core.JacocoGenerated;
import nva.commons.secrets.SecretsReader;
import org.jetbrains.annotations.NotNull;

public abstract class OpenSearchClient<R, Q extends Query<?>> {

public abstract R doSearch(Q query);

@NotNull
@JacocoGenerated
public static Stream<UsernamePasswordWrapper> getUsernamePasswordStream(SecretsReader secretsReader) {
return Stream.of(
secretsReader.fetchClassSecret(SEARCH_INFRASTRUCTURE_CREDENTIALS, UsernamePasswordWrapper.class));
}

@NotNull
@JacocoGenerated
public static CognitoCredentials getCognitoCredentials(UsernamePasswordWrapper wrapper) {
var uri = URI.create(readSearchInfrastructureAuthUri());
return new CognitoCredentials(wrapper::getUsername, wrapper::getPassword, uri);
}

@NotNull
@JacocoGenerated
public static CachedJwtProvider getCachedJwtProvider(SecretsReader reader) {
return
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,6 @@
import no.unit.nva.search2.enums.ParameterKey.ParamKind;
import no.unit.nva.search2.enums.ParameterKey.ValueEncoding;
import nva.commons.core.JacocoGenerated;
import org.jetbrains.annotations.NotNull;
import org.joda.time.DateTime;
import org.opensearch.index.query.BoolQueryBuilder;
import org.opensearch.index.query.MultiMatchQueryBuilder;
Expand Down Expand Up @@ -290,7 +289,6 @@ private MultiMatchQueryBuilder multiMatchQuery(K searchAllKey, K fieldsKey) {
.operator(Operator.AND);
}

@NotNull
public static Entry<String, String> stringsToEntry(String... strings) {
return new Entry<>() {
@Override
Expand Down Expand Up @@ -369,7 +367,6 @@ private <T> T castDateTime() {
return ((Class<T>) DateTime.class).cast(DateTime.parse(value));
}

@NotNull
private <T extends Number> T castNumber() {
return (T) attempt(() -> Integer.parseInt(value)).orElseThrow();
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,16 +1,13 @@
package no.unit.nva.search2.common;

import static java.util.Objects.nonNull;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.databind.JsonNode;
import no.unit.nva.search2.common.SwsResponse.HitsInfo.Hit;
import nva.commons.core.JacocoGenerated;
import org.jetbrains.annotations.NotNull;

import java.beans.Transient;
import java.util.List;
import java.util.Optional;

import static java.util.Objects.nonNull;
import no.unit.nva.search2.common.SwsResponse.HitsInfo.Hit;
import nva.commons.core.JacocoGenerated;

public record SwsResponse(
int took,
Expand Down Expand Up @@ -52,7 +49,7 @@ public record Hit(
}

@JacocoGenerated
@NotNull

@Transient
public Integer getTotalSize() {
return nonNull(hits)
Expand All @@ -61,7 +58,7 @@ public Integer getTotalSize() {
}

@JacocoGenerated
@NotNull

@Transient
public List<JsonNode> getSearchHits() {
return
Expand All @@ -70,7 +67,6 @@ public List<JsonNode> getSearchHits() {
: List.of();
}

@NotNull
@Transient
public List<String> getSort() {
return
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ public final class Words {
public static final String ASSOCIATED_ARTIFACTS = "associatedArtifacts";
public static final String ASTERISK = "*";
public static final String BOKMAAL_CODE = "nb";
public static final String BUCKETS = "buckets";
public static final String COLON = ":";
public static final String COMMA = ",";
public static final String CONTEXT_TYPE = "contextType";
Expand All @@ -31,6 +32,7 @@ public final class Words {
public static final String IDENTITY = "identity";
public static final String INSTANCE_TYPE = "instanceType";
public static final String JANUARY_FIRST = "-01-01";
public static final String KEY = "key";
public static final String KEYWORD = "keyword";
public static final String LABELS = "labels";
public static final String MAIN_TITLE = "mainTitle";
Expand All @@ -44,6 +46,7 @@ public final class Words {
public static final String PLUS = "+";
public static final String PREFIX = "(";
public static final String PROJECTS_ID = "projects.id";
public static final String PUBLIC = "public";
public static final String PUBLICATION_CONTEXT = "publicationContext";
public static final String PUBLICATION_DATE = "publicationDate";
public static final String PUBLICATION_INSTANCE = "publicationInstance";
Expand All @@ -59,8 +62,9 @@ public final class Words {
public static final String SEARCH_AFTER = "SEARCH_AFTER";
public static final String SEARCH_ALL = "SEARCH_ALL";
public static final String SEARCH_INFRASTRUCTURE_CREDENTIALS = "SearchInfrastructureCredentials";
public static final String SOURCE = "source";
public static final String SLASH = "/";
public static final String SORT = "SORT";
public static final String SOURCE = "source";
public static final String SPACE = " ";
public static final String SUFFIX = ")";
public static final String TEXT_CSV = "text/csv";
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,12 @@
import no.unit.nva.commons.json.JsonSerializable;

@JsonIgnoreProperties(ignoreUnknown = true)
public record Facet(URI id, String key, Integer count, Map<String, String> labels) implements JsonSerializable {
public record Facet(
URI id,
String key,
Integer count,
Map<String, String> labels
) implements JsonSerializable {

public Facet {
Objects.requireNonNull(count);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@
import java.util.stream.Collectors;
import no.unit.nva.commons.json.JsonUtils;
import nva.commons.core.paths.UriWrapper;
import org.jetbrains.annotations.NotNull;

public final class FacetsBuilder {

Expand All @@ -18,15 +17,15 @@ public static Map<String, List<Facet>> build(JsonNode aggregations, URI id) {
.entrySet().stream()
.map((entry) -> addIdToFacets(entry, id))
.collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue));
}
}

private static Map<String, List<Facet>> jsonNodeToMapOfFacets(JsonNode aggregations) {
final var typeReference = new TypeReference<Map<String, List<Facet>>>() { };
final var typeReference = new TypeReference<Map<String, List<Facet>>>() {
};
return attempt(() -> JsonUtils.dtoObjectMapper.readValue(aggregations.toPrettyString(), typeReference))
.orElseThrow();
}

@NotNull
private static Map.Entry<String, List<Facet>> addIdToFacets(Map.Entry<String, List<Facet>> entry, URI id) {
final var uriwrap = UriWrapper.fromUri(id);
var facets = entry.getValue().stream()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,12 @@
import static no.unit.nva.search2.constant.ErrorMessages.INVALID_VALUE_WITH_SORT;
import static no.unit.nva.search2.constant.Patterns.PATTERN_IS_BOOLEAN;
import static no.unit.nva.search2.constant.Patterns.PATTERN_IS_DATE;
import static no.unit.nva.search2.constant.Patterns.PATTERN_IS_IGNORE_CASE;
import static no.unit.nva.search2.constant.Patterns.PATTERN_IS_NONE_OR_ONE;
import static no.unit.nva.search2.constant.Patterns.PATTERN_IS_NON_EMPTY;
import static no.unit.nva.search2.constant.Patterns.PATTERN_IS_NUMBER;
import java.util.Collection;
import java.util.function.Predicate;
import nva.commons.core.JacocoGenerated;
import org.jetbrains.annotations.NotNull;

public interface ParameterKey {

Expand All @@ -40,7 +38,6 @@ static Predicate<ParameterKey> equalTo(String name) {
return key -> name.matches(key.fieldPattern());
}

@NotNull
@JacocoGenerated
static ValueEncoding getEncoding(ParamKind kind) {
return switch (kind) {
Expand Down Expand Up @@ -88,20 +85,6 @@ enum ParamKind {
}

enum FieldOperator {
MUST("KEYWORD"),
MUST_NOT("NOT"),
SHOULD("SHOULD"),
GREATER_THAN_OR_EQUAL_TO("SINCE"),
LESS_THAN("BEFORE");

private final String keyPattern;

FieldOperator(String pattern) {
this.keyPattern = PATTERN_IS_IGNORE_CASE + PATTERN_IS_NONE_OR_ONE + pattern;
}

public String pattern() {
return keyPattern;
}
MUST, MUST_NOT, SHOULD, GREATER_THAN_OR_EQUAL_TO, LESS_THAN
}
}

0 comments on commit 2babc6a

Please sign in to comment.