Package com.alpaca.controller
Class PermissionController
java.lang.Object
com.alpaca.controller.PermissionController
@RestController
@RequestMapping("/api/permissions")
public class PermissionController
extends Object
REST controller for managing
Permission
entities.
Provides endpoints for CRUD operations and pagination of permissions. Utilizes IPermissionService
for business logic and IPermissionMapper
for DTO conversions.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final IPermissionMapper
private final IPermissionService
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionorg.springframework.http.ResponseEntity
<Void> Deletes aPermission
identified by its unique identifier.org.springframework.http.ResponseEntity
<List<PermissionResponseDTO>> findAll()
Retrieves allPermissionResponseDTO
entities.org.springframework.http.ResponseEntity
<org.springframework.data.web.PagedModel<PermissionResponseDTO>> findAllPage
(org.springframework.data.domain.Pageable pageable) Retrieves a paginated list ofPermissionResponseDTO
entities.org.springframework.http.ResponseEntity
<PermissionResponseDTO> Retrieves aPermissionResponseDTO
by its unique identifier.org.springframework.http.ResponseEntity
<PermissionResponseDTO> save
(@Valid PermissionRequestDTO request) Creates a newPermission
.org.springframework.http.ResponseEntity
<PermissionResponseDTO> updateById
(@Valid PermissionRequestDTO request, UUID id) Updates an existingPermission
identified by its unique identifier.
-
Field Details
-
service
-
mapper
-
-
Constructor Details
-
PermissionController
public PermissionController()
-
-
Method Details
-
findById
@GetMapping("/{id}") public org.springframework.http.ResponseEntity<PermissionResponseDTO> findById(@PathVariable UUID id) Retrieves aPermissionResponseDTO
by its unique identifier.- Parameters:
id
- the unique identifier of the permission; must not benull
- Returns:
ResponseEntity
containing thePermissionResponseDTO
with statusHttpStatus.OK
- Throws:
NotFoundException
- if no permission is found with the givenid
-
save
@PostMapping public org.springframework.http.ResponseEntity<PermissionResponseDTO> save(@Valid @RequestBody @Valid PermissionRequestDTO request) Creates a newPermission
.- Parameters:
request
- thePermissionRequestDTO
containing the permission's details; must not benull
- Returns:
ResponseEntity
containing the createdPermissionResponseDTO
with statusHttpStatus.CREATED
- Throws:
BadRequestException
- if therequest
isnull
or contains invalid data
-
updateById
@PutMapping("/{id}") public org.springframework.http.ResponseEntity<PermissionResponseDTO> updateById(@Valid @RequestBody @Valid PermissionRequestDTO request, @PathVariable UUID id) Updates an existingPermission
identified by its unique identifier.- Parameters:
request
- thePermissionRequestDTO
containing the updated permission's details; must not benull
id
- the unique identifier of the permission to update; must not benull
- Returns:
ResponseEntity
containing the updatedPermissionResponseDTO
with statusHttpStatus.OK
- Throws:
NotFoundException
- if no permission is found with the givenid
BadRequestException
- if therequest
isnull
or contains invalid data
-
delete
@DeleteMapping("/{id}") public org.springframework.http.ResponseEntity<Void> delete(@PathVariable UUID id) Deletes aPermission
identified by its unique identifier.- Parameters:
id
- the unique identifier of the permission to delete; must not benull
- Returns:
ResponseEntity
with statusHttpStatus.NO_CONTENT
- Throws:
NotFoundException
- if no permission is found with the givenid
-
findAll
Retrieves allPermissionResponseDTO
entities.- Returns:
ResponseEntity
containing a list ofPermissionResponseDTO
with statusHttpStatus.OK
-
findAllPage
@GetMapping("/page") public org.springframework.http.ResponseEntity<org.springframework.data.web.PagedModel<PermissionResponseDTO>> findAllPage(org.springframework.data.domain.Pageable pageable) Retrieves a paginated list ofPermissionResponseDTO
entities.- Parameters:
pageable
- the pagination information; must not benull
- Returns:
ResponseEntity
containing aPagedModel
ofPermissionResponseDTO
with statusHttpStatus.OK
-