push swagger

This commit is contained in:
tuanvu
2025-10-06 09:56:36 +02:00
parent 16126c6364
commit b446b16027
5 changed files with 68 additions and 6 deletions

View File

@@ -6,8 +6,14 @@ import fr.istic.taa.jaxrs.DTO.SessionDTO;
import fr.istic.taa.jaxrs.DTO.UtilisateurDTO;
import fr.istic.taa.jaxrs.Mapper.SessionMapper;
import fr.istic.taa.jaxrs.Mapper.UtilisateurMapper;
import fr.istic.taa.jaxrs.metier.Question;
import fr.istic.taa.jaxrs.metier.Session;
import fr.istic.taa.jaxrs.metier.Utilisateur;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.media.Content;
import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.responses.ApiResponse;
import jakarta.ws.rs.*;
import jakarta.ws.rs.core.Response;
@@ -19,6 +25,7 @@ import java.util.List;
public class UtilisateurResource {
private final UtilisateurDAO utilisateurDAO = new UtilisateurDAO();
private final UtilisateurMapper mapper = UtilisateurMapper.INSTANCE;
@GET
public List<Utilisateur> listUtilisateur() {
List<Utilisateur> utilisateurs = utilisateurDAO.findAll();
@@ -59,7 +66,25 @@ public class UtilisateurResource {
@GET
@Path("/{id}")
public Response getUtilisateur(@PathParam("id") Integer id) {
@Operation(summary = "Get user by ID",
tags = {"utilisateur"},
description = "Get User by ID",
responses = {
@ApiResponse(description = "Utilisateur", content = @Content(
schema = @Schema(implementation = Utilisateur.class)
)),
@ApiResponse(responseCode = "400", description = "Invalid ID supplied"),
@ApiResponse(responseCode = "404", description = "User not found")
})
public Response getUtilisateur(@Parameter(
description = "ID of user that needs to be fetched",
schema = @Schema(
type = "integer",
format = "int32",
description = "param ID of user that needs to be fetched"
),
required = true)
@PathParam("id") Integer id) {
Utilisateur utilisateur = utilisateurDAO.findById(id);
if (utilisateur == null) {
return Response.status(Response.Status.NOT_FOUND).build();
@@ -99,8 +124,8 @@ public class UtilisateurResource {
if (utilisateur == null) {
return Response.status(Response.Status.NOT_FOUND).build();
}
List<Session> sess= utilisateur.getSession();
List<SessionDTO> dtos= SessionMapper.INSTANCE.toDTOs(sess);
List<Session> sess = utilisateur.getSession();
List<SessionDTO> dtos = SessionMapper.INSTANCE.toDTOs(sess);
return Response.status(Response.Status.OK).entity(dtos).build();
}