Skip to content

3 implement base eventcontroller endpoints#10

Merged
TyostoKarry merged 4 commits into
mainfrom
3-implement-base-eventcontroller-endpoints
Oct 20, 2025
Merged

3 implement base eventcontroller endpoints#10
TyostoKarry merged 4 commits into
mainfrom
3-implement-base-eventcontroller-endpoints

Conversation

@TyostoKarry

Copy link
Copy Markdown
Owner
  • Added EventService with basic CRUD operations integrated via EventRepository.
  • Introduced EventNotFoundException and GlobalExceptionHandler for 404 handling.
  • Implemented EventController with endpoints for listing, retrieving, and creating events.
  • Added DTOs for requests and responses with basic validation.
  • Added WebMvcTest coverage for key controller operations and error scenarios.

- Introduces EventService under the service package.
- Implements methods:
 - getAllEvents() – fetch all events.
 - getEventById(id) – fetch single event by ID.
 - saveEvent(event) – persist event to repository.
- Integrates with EventRepository via dependency injection.
- Added EventNotFoundException in exception package to represent missing events
- Updated EventService.getEventById() to throw EventNotFoundException when ID not found
- Introduced GlobalExceptionHandler in config package to map EventNotFoundException to HTTP 404 responses
Added EventController and corresponding DTO classes to handle core event management operations.
- Implemented GET /api/v1/event/list endpoint to list all events.
- Implemented GET /api/v1/event/{id} endpoint to fetch details of a specific event.
- Implemented POST /api/v1/event endpoint to create a new event.
- Included request and response DTOs:
  - EventCreateRequest (with validation for non-blank name and non-empty date list)
  - EventCreateResponse
  - EventDetailsResponse
  - EventListItemDto
  - EventListResponse
- Introduce comprehensive controller-layer tests for EventController using @WebMvcTest.
- Cover event listing, retrieval by ID, creation, and validation error cases.
- Include support for mockito-kotlin matchers and updates POST endpoint to return 201 Created.
@TyostoKarry TyostoKarry self-assigned this Oct 20, 2025
@TyostoKarry TyostoKarry linked an issue Oct 20, 2025 that may be closed by this pull request
@TyostoKarry TyostoKarry merged commit 0ffb374 into main Oct 20, 2025
1 check passed
@TyostoKarry TyostoKarry deleted the 3-implement-base-eventcontroller-endpoints branch October 20, 2025 12:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement base EventController endpoints

1 participant