package de.towerdefence.server.admin; import com.fasterxml.jackson.databind.ObjectMapper; import de.towerdefence.server.auth.UserSession; import de.towerdefence.server.oas.AdminApi; import de.towerdefence.server.oas.models.AdminAuthInfo; import jakarta.servlet.http.HttpServletRequest; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import java.util.Optional; @Controller @RequestMapping("${openapi.api.base-path:/api/v1}") public class AdminApiController implements AdminApi { @Autowired UserSession userSession; @Override public Optional getObjectMapper() { return Optional.empty(); } @Override public Optional getRequest() { return Optional.empty(); } @Override public ResponseEntity adminGetAuthenticated() { AdminAuthInfo authInfo = new AdminAuthInfo(); authInfo.setUsername(this.userSession.getUsername()); return ResponseEntity.ok(authInfo); } }