feat: add listing endpoints for secrets, transit, and tokenization keys#69
Merged
feat: add listing endpoints for secrets, transit, and tokenization keys#69
Conversation
This commit introduces comprehensive listing capabilities across all core cryptographic modules, supporting pagination via `limit` and `offset` query parameters. Key additions: - **Secrets Module**: - Added `GET /v1/secrets` HTTP handler. - Implemented `List` usecase operations with metrics decorators. - Added `List` methods to both PostgreSQL and MySQL repositories. - Created `ListSecretsResponse` DTO for consistent API responses. - **Transit Module**: - Added `GET /v1/transit/keys` HTTP handler. - Implemented `List` usecase operations with metrics decorators. - Added `List` methods to both PostgreSQL and MySQL repositories. - Created `ListTransitKeysResponse` DTO. - **Tokenization Module**: - Added `GET /v1/tokenization/keys` HTTP handler. - Implemented `List` usecase operations with metrics decorators. - Added `List` methods to PostgreSQL and MySQL repositories. - Created `ListTokenizationKeysResponse` DTO. - **Routing & Config**: - Registered the new GET endpoints in internal/http/server.go. - Bumped application version to `0.16.0` in cmd/app/main.go. - **Documentation & Release Prep**: - Documented new routes, DTOs, and parameters in docs/openapi.yaml. - Updated API markdown documentation in `docs/api/data/`. - Updated `CHANGELOG.md`, `docs/releases/RELEASES.md`, and compatibility matrices. - Refreshed documentation metadata (`docs/metadata.json`). - **Testing**: - Maintained strict test coverage matching project guidelines. - Added fully-native integration tests for all new MySQL and PostgreSQL repository `List` methods. - Included unit tests for all new DTO mappers, usecases, and HTTP handlers.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This commit introduces comprehensive listing capabilities across all core cryptographic modules, supporting pagination via
limitandoffsetquery parameters.Key additions:
Secrets Module:
GET /v1/secretsHTTP handler.Listusecase operations with metrics decorators.Listmethods to both PostgreSQL and MySQL repositories.ListSecretsResponseDTO for consistent API responses.Transit Module:
GET /v1/transit/keysHTTP handler.Listusecase operations with metrics decorators.Listmethods to both PostgreSQL and MySQL repositories.ListTransitKeysResponseDTO.Tokenization Module:
GET /v1/tokenization/keysHTTP handler.Listusecase operations with metrics decorators.Listmethods to PostgreSQL and MySQL repositories.ListTokenizationKeysResponseDTO.Routing & Config:
0.16.0in cmd/app/main.go.Documentation & Release Prep:
docs/api/data/.CHANGELOG.md,docs/releases/RELEASES.md, and compatibility matrices.docs/metadata.json).Testing:
Listmethods.