From: Alexander Goussas Date: Sat, 23 May 2026 00:17:03 +0000 (-0500) Subject: refactor: refactor paths for translation resource X-Git-Url: http://git.frustrated-labs.net/?a=commitdiff_plain;h=c9a58cbda0acfcae2326632ca35c3cab3a0c8e03;p=larousseapi refactor: refactor paths for translation resource --- diff --git a/collections/larousse API/Translate a word.yml b/collections/larousse API/Translate a word.yml index a747ad7..18b0b7a 100644 --- a/collections/larousse API/Translate a word.yml +++ b/collections/larousse API/Translate a word.yml @@ -5,11 +5,11 @@ info: http: method: GET - url: http://localhost:8080/translate?q=voiture + url: http://localhost:8080/words/:word/translation params: - - name: q + - name: word value: voiture - type: query + type: path auth: inherit settings: diff --git a/src/main/java/net/frustratedfunctor/definitions/WordDefinition.java b/src/main/java/net/frustratedfunctor/definitions/WordDefinition.java new file mode 100644 index 0000000..178f95d --- /dev/null +++ b/src/main/java/net/frustratedfunctor/definitions/WordDefinition.java @@ -0,0 +1,5 @@ +package net.frustratedfunctor.definitions; + +public record WordDefinition() { +} + diff --git a/src/main/java/net/frustratedfunctor/definitions/WordDefinitionRepository.java b/src/main/java/net/frustratedfunctor/definitions/WordDefinitionRepository.java new file mode 100644 index 0000000..226b517 --- /dev/null +++ b/src/main/java/net/frustratedfunctor/definitions/WordDefinitionRepository.java @@ -0,0 +1,4 @@ +package net.frustratedfunctor.definitions; + +public interface WordDefinitionRepository { +} diff --git a/src/main/java/net/frustratedfunctor/definitions/WordDefinitionResource.java b/src/main/java/net/frustratedfunctor/definitions/WordDefinitionResource.java new file mode 100644 index 0000000..2c2410f --- /dev/null +++ b/src/main/java/net/frustratedfunctor/definitions/WordDefinitionResource.java @@ -0,0 +1,19 @@ +package net.frustratedfunctor.definitions; + +import jakarta.ws.rs.GET; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.Produces; +import jakarta.ws.rs.core.MediaType; + +@Path("/words") +public class WordDefinitionResource { + + @Path("/{word}/definition") + @GET + @Produces(MediaType.APPLICATION_JSON) + public WordDefinition definition(@PathParam("word") String word) { + return null; + } + +} diff --git a/src/main/java/net/frustratedfunctor/definitions/WordDefinitionService.java b/src/main/java/net/frustratedfunctor/definitions/WordDefinitionService.java new file mode 100644 index 0000000..32bd003 --- /dev/null +++ b/src/main/java/net/frustratedfunctor/definitions/WordDefinitionService.java @@ -0,0 +1,7 @@ +package net.frustratedfunctor.definitions; + +import jakarta.enterprise.context.ApplicationScoped; + +@ApplicationScoped +public class WordDefinitionService { +} diff --git a/src/main/java/net/frustratedfunctor/translations/WordTranslationResource.java b/src/main/java/net/frustratedfunctor/translations/WordTranslationResource.java index 3d35730..b1b2cae 100644 --- a/src/main/java/net/frustratedfunctor/translations/WordTranslationResource.java +++ b/src/main/java/net/frustratedfunctor/translations/WordTranslationResource.java @@ -3,11 +3,11 @@ package net.frustratedfunctor.translations; import jakarta.ws.rs.GET; import jakarta.ws.rs.Path; +import jakarta.ws.rs.PathParam; import jakarta.ws.rs.Produces; import jakarta.ws.rs.core.MediaType; -import org.jboss.resteasy.reactive.RestQuery; -@Path("/translate") +@Path("/words") public class WordTranslationResource { private final WordTranslationService words; @@ -16,9 +16,10 @@ public class WordTranslationResource { this.words = words; } + @Path("/{word}/translation") @GET @Produces(MediaType.APPLICATION_JSON) - public WordTranslation translate(@RestQuery("q") String word) { + public WordTranslation translation(@PathParam("word") String word) { return words.translate(word); }