Skip to content

Commit

Permalink
added facets
Browse files Browse the repository at this point in the history
  • Loading branch information
StigNorland committed Nov 17, 2023
1 parent 9b99ef8 commit 12b76f4
Show file tree
Hide file tree
Showing 4 changed files with 27 additions and 29 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,7 @@ private static NestedAggregationBuilder generateReferenceAggregation() {

private static TermsAggregationBuilder generatePublicationInstanceTypeAggregation() {
return generateSimpleAggregation(
TYPE, jsonPath(ENTITY_DESCRIPTION, REFERENCE, PUBLICATION_INSTANCE, TYPE));
TYPE, jsonPath(ENTITY_DESCRIPTION, REFERENCE, PUBLICATION_INSTANCE, TYPE, KEYWORD));
}

private static NestedAggregationBuilder generateNestedPublicationInstanceAggregation() {
Expand All @@ -150,22 +150,22 @@ private static NestedAggregationBuilder generateNestedPublicationContextAggregat

private static TermsAggregationBuilder generatePublicationContextPublisherIdAggregation() {
return generateSimpleAggregation(
PUBLISHER, jsonPath(ENTITY_DESCRIPTION, REFERENCE, PUBLICATION_CONTEXT, PUBLISHER, IDENTIFIER));
PUBLISHER, jsonPath(ENTITY_DESCRIPTION, REFERENCE, PUBLICATION_CONTEXT, PUBLISHER, IDENTIFIER, KEYWORD));
}

private static TermsAggregationBuilder generatePublicationContextPublisherNameAggregation() {
return generateSimpleAggregation(
NAME, jsonPath(ENTITY_DESCRIPTION, REFERENCE, PUBLICATION_CONTEXT, PUBLISHER, NAME));
NAME, jsonPath(ENTITY_DESCRIPTION, REFERENCE, PUBLICATION_CONTEXT, PUBLISHER, NAME, KEYWORD));
}

private static TermsAggregationBuilder generatePublicationContextJournalIdAggregation() {
return generateSimpleAggregation(
ID, jsonPath(ENTITY_DESCRIPTION, REFERENCE, PUBLICATION_CONTEXT, IDENTIFIER));
ID, jsonPath(ENTITY_DESCRIPTION, REFERENCE, PUBLICATION_CONTEXT, IDENTIFIER, KEYWORD));
}

private static TermsAggregationBuilder generatePublicationContextJournalNameAggregation() {
return generateSimpleAggregation(
NAME, jsonPath(ENTITY_DESCRIPTION, REFERENCE, PUBLICATION_CONTEXT, NAME));
NAME, jsonPath(ENTITY_DESCRIPTION, REFERENCE, PUBLICATION_CONTEXT, NAME, KEYWORD));
}

private static NestedAggregationBuilder generateEntityDescriptionAggregation() {
Expand All @@ -183,7 +183,7 @@ private static NestedAggregationBuilder generateFundingSourceAggregation() {
return
new NestedAggregationBuilder(FUNDINGS, FUNDINGS)
.subAggregation(
generateSimpleAggregation(IDENTIFIER, jsonPath(FUNDINGS, SOURCE, IDENTIFIER))
generateSimpleAggregation(IDENTIFIER, jsonPath(FUNDINGS, SOURCE, IDENTIFIER, KEYWORD))
.subAggregation(
generateLabelsAggregation(jsonPath(FUNDINGS, SOURCE)))
);
Expand All @@ -209,12 +209,12 @@ private static NestedAggregationBuilder generateNestedIdentityAggregation() {
}

private static TermsAggregationBuilder generateIdAggregation() {
return generateSimpleAggregation(ID, jsonPath(ENTITY_DESCRIPTION, CONTRIBUTORS, IDENTITY, ID));
return generateSimpleAggregation(ID, jsonPath(ENTITY_DESCRIPTION, CONTRIBUTORS, IDENTITY, ID, KEYWORD));
}

private static TermsAggregationBuilder generateIdAggregation(String object) {
return new TermsAggregationBuilder(ID)
.field(jsonPath(object, ID))
.field(jsonPath(object, ID, KEYWORD))
.size(DEFAULT_AGGREGATION_SIZE)
.subAggregation(generateLabelsAggregation(object));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,12 @@
import org.slf4j.LoggerFactory;

public class UserSettingsClient implements OpenSearchClient<UserSettings, ResourceAwsQuery> {

private static final Logger logger = LoggerFactory.getLogger(UserSettingsClient.class);
private final CachedJwtProvider jwtProvider;
private final HttpClient httpClient;
private final HttpResponse.BodyHandler<String> bodyHandler;


public UserSettingsClient(CachedJwtProvider cachedJwtProvider, HttpClient client) {
super();
this.jwtProvider = cachedJwtProvider;
Expand All @@ -47,7 +47,7 @@ public UserSettings doSearch(ResourceAwsQuery query) {
.map(this::handleResponse)
.findFirst()
.orElse(new UserSettings(Collections.emptyList()));
}
}

private Stream<String> createQueryBuilderStream(ResourceAwsQuery query) {
return query.getOptional(CONTRIBUTOR_ID).stream();
Expand Down Expand Up @@ -87,5 +87,4 @@ private UserSettings handleResponse(HttpResponse<String> response) {
? settings.get()
: new UserSettings(Collections.emptyList());
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -19,25 +19,25 @@
import org.jetbrains.annotations.NotNull;

public interface ParameterKey {

String fieldName();

Float fieldBoost();

ParamKind fieldType();

String fieldPattern();

String valuePattern();

ValueEncoding valueEncoding();

Collection<String> searchFields();

FieldOperator searchOperator();

String errorMessage();

static Predicate<ParameterKey> equalTo(String name) {
return key -> name.matches(key.fieldPattern());
}
Expand Down Expand Up @@ -80,32 +80,31 @@ static int compareAscending(Enum<?> key1, Enum<?> key2) {
return key1.ordinal() - key2.ordinal();
}


static String escapeSearchString(String value) {
return value.replaceAll(PATTERN_IS_SPECIAL_CHARACTERS, PATTERN_IS_ADD_SLASH);
}

enum ValueEncoding {
NONE, DECODE
}

enum ParamKind {
BOOLEAN, DATE, NUMBER, KEYWORD, TEXT, SORT_KEY, CUSTOM
}

enum FieldOperator {
MUST(""),
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;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -444,7 +444,7 @@ void shouldQueryingFundingSuccessfully() throws InterruptedException, ApiGateway
"sample_publication_with_several_of_the_same_affiliation.json");

var query = queryWithTermAndAggregation(
"fundings.source.identifier:\"NFR\"",
"fundings.source.identifier.keyword:\"NFR\"",
ApplicationConstants.RESOURCES_AGGREGATIONS);

var response = searchClient.searchWithSearchDocumentQuery(query, indexName);
Expand Down

0 comments on commit 12b76f4

Please sign in to comment.