Package com.dh.TaskManager.controller
Class TaskController
java.lang.Object
com.dh.TaskManager.controller.TaskController
Controlador para gestionar las operaciones relacionadas con las tareas.
-
Constructor Summary
ConstructorDescriptionTaskController
(TaskService taskService) Constructor de la clase TaskController que realiza la inyección de dependencias del servicio de tareas. -
Method Summary
Modifier and TypeMethodDescriptionorg.springframework.http.ResponseEntity
<TaskResponseDTO> createTask
(@Valid TaskRequestDTO taskDTO) Crea una nueva tarea utilizando los datos proporcionados en el objeto TaskRequestDTO.org.springframework.http.ResponseEntity
<Void> deleteTaskById
(Long id) Elimina una tarea específica por su identificador.org.springframework.http.ResponseEntity
<List<TaskResponseDTO>> Obtiene todas las tareas disponibles.org.springframework.http.ResponseEntity
<TaskResponseDTO> getTaskById
(Long id) Obtiene una tarea específica por su identificador.org.springframework.http.ResponseEntity
<TaskResponseDTO> updateTask
(@Valid TaskRequestToUpdateDTO taskRequestDTO) Actualiza una tarea existente utilizando los datos proporcionados en el objeto TaskRequestToUpdateDTO.
-
Constructor Details
-
TaskController
Constructor de la clase TaskController que realiza la inyección de dependencias del servicio de tareas.- Parameters:
taskService
- La implementación concreta del servicio de tareas que se utilizará en el controlador. Aunque se utiliza la interfaz ITaskService como atributo, se pasa la implementación concreta del servicio al constructor, siguiendo el principio de inversión de dependencias.
-
-
Method Details
-
createTask
@PostMapping public org.springframework.http.ResponseEntity<TaskResponseDTO> createTask(@Valid @RequestBody @Valid TaskRequestDTO taskDTO) Crea una nueva tarea utilizando los datos proporcionados en el objeto TaskRequestDTO.- Parameters:
taskDTO
- El objeto TaskRequestDTO que contiene los datos de la tarea a crear.- Returns:
- ResponseEntity
ResponseEntity que contiene el objeto TaskResponseDTO creado, con un estado HTTP 201 (CREATED) si la tarea se crea correctamente.
-
getTaskById
@GetMapping("/{id}") public org.springframework.http.ResponseEntity<TaskResponseDTO> getTaskById(@PathVariable Long id) Obtiene una tarea específica por su identificador.- Parameters:
id
- El identificador único de la tarea.- Returns:
- ResponseEntity
Un ResponseEntity que contiene el objeto TaskResponseDTO correspondiente a la tarea solicitada, con un estado HTTP 200 (OK) si se encuentra la tarea, o estado HTTP 404 (NOT FOUND) si no se encuentra. - Throws:
NotFoundException
- Si no se encuentra ninguna tarea con el identificador proporcionado.
-
getAllTasks
Obtiene todas las tareas disponibles.- Returns:
- ResponseEntityinvalid input: '<'List
> Un ResponseEntity que contiene una lista de TaskResponseDTO, con un estado HTTP 200 (OK) si se obtienen las tareas correctamente.
-
updateTask
@PutMapping public org.springframework.http.ResponseEntity<TaskResponseDTO> updateTask(@Valid @RequestBody @Valid TaskRequestToUpdateDTO taskRequestDTO) Actualiza una tarea existente utilizando los datos proporcionados en el objeto TaskRequestToUpdateDTO.- Parameters:
taskRequestDTO
- El objeto TaskRequestToUpdateDTO que contiene los datos actualizados de la tarea.- Returns:
- ResponseEntity
Un ResponseEntity que contiene el objeto TaskResponseDTO actualizado, con un estado HTTP 200 (OK) si la tarea se actualiza correctamente. - Throws:
NotFoundException
- Si no se encuentra ninguna tarea con el identificador proporcionado.
-
deleteTaskById
@DeleteMapping("/{id}") public org.springframework.http.ResponseEntity<Void> deleteTaskById(@PathVariable Long id) Elimina una tarea específica por su identificador.- Parameters:
id
- El identificador único de la tarea a eliminar.- Returns:
- ResponseEntity
Un ResponseEntity sin contenido y con un estado HTTP 204 (NO CONTENT) si la tarea se elimina correctamente. - Throws:
NotFoundException
- Si no se encuentra ninguna tarea con el identificador proporcionado.
-