From 3f68decb23018d1c8e602e3ecf8e74acc2505fd9 Mon Sep 17 00:00:00 2001 From: TakahashiNg <83152264+TakahashiNguyen@users.noreply.github.com> Date: Sun, 10 May 2026 02:16:53 +0000 Subject: [PATCH] chore: update --- .../drinkool/controller/FileController.java | 31 +++++++++++++++++++ .../com/drinkool/services/FileService.java | 21 +++++++++++++ .../src/main/resources/application.properties | 1 + k8s/base/file.yaml | 3 +- .../com/drinkool/lib/dtos/UploadFile.java | 8 +++++ 5 files changed, 63 insertions(+), 1 deletion(-) create mode 100644 gateway-service/src/main/java/com/drinkool/controller/FileController.java create mode 100644 gateway-service/src/main/java/com/drinkool/services/FileService.java create mode 100644 lib/src/main/java/com/drinkool/lib/dtos/UploadFile.java diff --git a/gateway-service/src/main/java/com/drinkool/controller/FileController.java b/gateway-service/src/main/java/com/drinkool/controller/FileController.java new file mode 100644 index 0000000..d77482e --- /dev/null +++ b/gateway-service/src/main/java/com/drinkool/controller/FileController.java @@ -0,0 +1,31 @@ +package com.drinkool.controller; + +import com.drinkool.lib.dtos.UploadFile; +import com.drinkool.services.FileService; +import io.smallrye.mutiny.Uni; +import jakarta.inject.Inject; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.POST; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.core.Response; +import org.eclipse.microprofile.rest.client.inject.RestClient; + +@Path("/api/file") +public class FileController { + + @Inject + @RestClient + FileService fileService; + + @POST + public Uni upload(UploadFile input) { + return fileService.upload(input); + } + + @GET + @Path("/{name}") + public Uni get(@PathParam("name") String name) { + return fileService.get(name); + } +} diff --git a/gateway-service/src/main/java/com/drinkool/services/FileService.java b/gateway-service/src/main/java/com/drinkool/services/FileService.java new file mode 100644 index 0000000..cee2ab4 --- /dev/null +++ b/gateway-service/src/main/java/com/drinkool/services/FileService.java @@ -0,0 +1,21 @@ +package com.drinkool.services; + +import com.drinkool.lib.dtos.UploadFile; +import io.smallrye.mutiny.Uni; +import jakarta.ws.rs.GET; +import jakarta.ws.rs.POST; +import jakarta.ws.rs.Path; +import jakarta.ws.rs.PathParam; +import jakarta.ws.rs.core.Response; +import org.eclipse.microprofile.rest.client.inject.RegisterRestClient; + +@RegisterRestClient(configKey = "file") +@Path("/") +public interface FileService { + @POST + Uni upload(UploadFile input); + + @GET + @Path("/{name}") + Uni get(@PathParam("name") String name); +} diff --git a/gateway-service/src/main/resources/application.properties b/gateway-service/src/main/resources/application.properties index 9f7a285..e974aed 100644 --- a/gateway-service/src/main/resources/application.properties +++ b/gateway-service/src/main/resources/application.properties @@ -15,6 +15,7 @@ quarkus.native.additional-build-args=--future-defaults=all # Rest Client quarkus.rest-client.account.url=http://account-service quarkus.rest-client.eatery.url=http://eatery-service +quarkus.rest-client.file.url=http://file-service # GraphQL Client quarkus.smallrye-graphql-client.eatery.url=http://eatery-service/graphql diff --git a/k8s/base/file.yaml b/k8s/base/file.yaml index 2b8c356..8be3708 100644 --- a/k8s/base/file.yaml +++ b/k8s/base/file.yaml @@ -31,7 +31,7 @@ spec: volumes: - name: file-volume persistentVolumeClaim: - claimName: image-pvc + claimName: file-pvc --- apiVersion: v1 kind: Service @@ -54,6 +54,7 @@ spec: accessModes: - ReadWriteMany nfs: + server: 192.168.1.100 path: /data/images --- apiVersion: v1 diff --git a/lib/src/main/java/com/drinkool/lib/dtos/UploadFile.java b/lib/src/main/java/com/drinkool/lib/dtos/UploadFile.java new file mode 100644 index 0000000..aafe18e --- /dev/null +++ b/lib/src/main/java/com/drinkool/lib/dtos/UploadFile.java @@ -0,0 +1,8 @@ +package com.drinkool.lib.dtos; + +import io.vertx.ext.web.FileUpload; + +public class UploadFile { + + public FileUpload file; +}