{"repo":"Rapter1990/carservice","free":true,"listed":false,"github":"https://github.com/Rapter1990/carservice","clone":"git clone https://github.com/Rapter1990/carservice.git","description":"Case Study - Car Service (Java 21, Spring Boot, Spring Security, JWT, MySql, JUnit, Jacoco, Prometheus,Grafana, AlertManager, Docker, Kubernetes, Github Action (CI/CD), Sonarqube, Test Container)","language":"Java","stars":17,"topics":["alertmanager","github-actions","grafana","integration-testing","jacoco","java","java21","junit","kubernetes","mysql"],"license":null,"category":"deployment-docker-iac","readme_excerpt":"Case Study - Car Service 📖 Information Authentication: Users must register before accessing car and service endpoints. Login returns an access + refresh token; refresh-token endpoint issues new tokens. Logout invalidates the refresh token. Responses use HTTP‑status codes: 200 for success, 400 for bad data, 401 for unauthorized, 409 for conflicts. Car Management: Roles “USER” or “ADMIN” can assign cars; only admins can list/update/delete any car. Each car has a unique license plate; duplicates yield 409 Conflict. Owners (and admins) can retrieve, update, or soft‑delete by ID. Admin‐only endpoints support pagination and filtering by “active” status. Service Management: Only admins may create, assign, or update services. Services can be listed (all, by car, or filtered by status), with pagination on every list endpoint. Assigning a service to a car or updating it returns the updated ServiceResponse. Explore Rest APIs Endpoints Summary Method Url Description Request Body Path Variable Response POST /api/v1/authentication/user/register Register for Admin or User RegisterRequest CustomResponse&lt;Void&gt; POST /api/v1/authentication/user/login Login for Admin or User LoginRequest CustomResponse&lt;TokenResponse&gt; POST /api/v1/authentication/user/refresh-token Refresh Token for Admin or User TokenRefreshRequest CustomResponse&lt;TokenResponse&gt; POST /api/v1/authentication/user/logout Logout for Admin or User TokenInvalidateRequest CustomResponse&lt;Void&gt; POST /api/v1/cars As","default_branch":null,"files":null,"tree":[],"storefront":"/r/Rapter1990","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/Rapter1990/carservice/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}