This is an automated email from the ASF dual-hosted git repository. rnewson pushed a commit to branch nouveau-update-bundle in repository https://gitbox.apache.org/repos/asf/couchdb.git
commit c1570138683c26d0d77c04e316f5d66e0688809c Author: Robert Newson <[email protected]> AuthorDate: Sat Mar 21 09:53:10 2026 +0000 convert Analyze{Request,Response} to record --- .../apache/couchdb/nouveau/api/AnalyzeRequest.java | 32 +--------------------- .../couchdb/nouveau/api/AnalyzeResponse.java | 23 +--------------- .../couchdb/nouveau/health/AnalyzeHealthCheck.java | 2 +- .../couchdb/nouveau/resources/AnalyzeResource.java | 5 ++-- 4 files changed, 5 insertions(+), 57 deletions(-) diff --git a/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/api/AnalyzeRequest.java b/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/api/AnalyzeRequest.java index 61cbe4244..d02f09a1f 100644 --- a/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/api/AnalyzeRequest.java +++ b/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/api/AnalyzeRequest.java @@ -13,36 +13,6 @@ package org.apache.couchdb.nouveau.api; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.databind.PropertyNamingStrategies; -import com.fasterxml.jackson.databind.annotation.JsonNaming; import jakarta.validation.constraints.NotEmpty; -@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class) -public class AnalyzeRequest { - - @NotEmpty - private String analyzer; - - @NotEmpty - private String text; - - public AnalyzeRequest() { - // Jackson deserialization - } - - public AnalyzeRequest(final String analyzer, final String text) { - this.analyzer = analyzer; - this.text = text; - } - - @JsonProperty - public String getAnalyzer() { - return analyzer; - } - - @JsonProperty - public String getText() { - return text; - } -} +public record AnalyzeRequest(@NotEmpty String analyzer, @NotEmpty String text) {} diff --git a/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/api/AnalyzeResponse.java b/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/api/AnalyzeResponse.java index 8687f652a..09945b9f0 100644 --- a/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/api/AnalyzeResponse.java +++ b/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/api/AnalyzeResponse.java @@ -13,29 +13,8 @@ package org.apache.couchdb.nouveau.api; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.databind.PropertyNamingStrategies; -import com.fasterxml.jackson.databind.annotation.JsonNaming; import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.NotNull; import java.util.List; -@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class) -public class AnalyzeResponse { - - @NotNull - private List<@NotEmpty String> tokens; - - public AnalyzeResponse() { - // Jackson deserialization - } - - public AnalyzeResponse(List<String> tokens) { - this.tokens = tokens; - } - - @JsonProperty - public List<String> getTokens() { - return tokens; - } -} +public record AnalyzeResponse(@NotNull List<@NotEmpty String> tokens) {} diff --git a/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/health/AnalyzeHealthCheck.java b/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/health/AnalyzeHealthCheck.java index bd7edeaf3..10eaac43e 100644 --- a/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/health/AnalyzeHealthCheck.java +++ b/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/health/AnalyzeHealthCheck.java @@ -33,7 +33,7 @@ public final class AnalyzeHealthCheck extends HealthCheck { final AnalyzeRequest request = new AnalyzeRequest("standard", "hello goodbye"); final AnalyzeResponse response = analyzeResource.analyzeText(request); final List<String> expected = Arrays.asList("hello", "goodbye"); - final List<String> actual = response.getTokens(); + final List<String> actual = response.tokens(); if (expected.equals(actual)) { return Result.healthy(); } else { diff --git a/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/resources/AnalyzeResource.java b/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/resources/AnalyzeResource.java index d5249e205..8da17b1c5 100644 --- a/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/resources/AnalyzeResource.java +++ b/extra/nouveau/src/main/java/org/apache/couchdb/nouveau/resources/AnalyzeResource.java @@ -46,11 +46,10 @@ public final class AnalyzeResource { @POST public AnalyzeResponse analyzeText(@NotNull @Valid AnalyzeRequest request) throws IOException { try { - final List<String> tokens = - tokenize(LuceneAnalyzerFactory.newAnalyzer(request.getAnalyzer()), request.getText()); + final List<String> tokens = tokenize(LuceneAnalyzerFactory.newAnalyzer(request.analyzer()), request.text()); return new AnalyzeResponse(tokens); } catch (IllegalArgumentException e) { - throw new WebApplicationException(request.getAnalyzer() + " not a valid analyzer", Status.BAD_REQUEST); + throw new WebApplicationException(request.analyzer() + " not a valid analyzer", Status.BAD_REQUEST); } }
