How sofiaolmospino/paprueba works
EventHub exposes event creation, listing, lookup, update, and deletion through a Spring web API. The controller validates request DTOs and delegates business rules to EventoService, which checks duplicate names and delegates persistence through EventoRepository. The sampled PostgreSQL adapter performs database operations; an in-memory adapter exists but its runtime selection is not shown. SesionEvento and Evento model a session association, but no session-management workflow is present in the tree. The README is empty, so capabilities beyond the sampled event CRUD are not established.
Main entry points: EventoController.java Event controller · EventoService.java Event service · Evento.java Event entity · EventoRepository.java Repository port
Components 15
Web API
- Event controller
src/main/java/com/eventhub/paprueba/evento/evento/infrastructure/adapter/in/web/EventoController.java - Create request
src/main/java/com/eventhub/paprueba/evento/evento/infrastructure/adapter/in/web/dto/CrearEventoRequest.java - Update request
src/main/java/com/eventhub/paprueba/evento/evento/infrastructure/adapter/in/web/dto/ActualizarEventoRequest.java - Event response
src/main/java/com/eventhub/paprueba/evento/evento/infrastructure/adapter/in/web/dto/EventoResponse.java
Event logic
- Event service
src/main/java/com/eventhub/paprueba/evento/evento/application/EventoService.java - Repository port
src/main/java/com/eventhub/paprueba/evento/evento/domain/port/EventoRepository.java
Persistence
- PostgreSQL adapter
src/main/java/com/eventhub/paprueba/evento/evento/infrastructure/persistence/EventoRepositoryPostgres.java - PostgreSQL database
- Memory adapter
src/main/java/com/eventhub/paprueba/evento/evento/infrastructure/memory/EventoRepositoryEnMemoria.java
Domain model
- Event entity
src/main/java/com/eventhub/paprueba/evento/evento/domain/Evento.java - Event state
src/main/java/com/eventhub/paprueba/evento/evento/domain/EstadoEvento.java - Event session
src/main/java/com/eventhub/paprueba/sesionevento/domain/SesionEvento.java - Missing event error
src/main/java/com/eventhub/paprueba/evento/evento/domain/exception/EventoNoEncontradoException.java - Duplicate name error
src/main/java/com/eventhub/paprueba/evento/evento/domain/exception/NombreEventoDuplicadoException.java
Other components
- API client
Connections 14
- API client → Event controller: calls API
- Event controller → Create request: accepts create
- Event controller → Update request: accepts update
- Event controller → Event service: delegates CRUD
- Event service → Repository port: calls repository
- Event service → Event entity: creates and updates
- Event service → Missing event error: raises
- Event service → Duplicate name error: raises
- Event controller → Event response: maps results
- Event entity → Event state: holds state
- Event entity → Event session: holds sessions
- PostgreSQL adapter → Repository port: implements port
- PostgreSQL adapter → PostgreSQL database: reads and writes
- Memory adapter → Repository port: implements port