Refactor API structure and update schema references

Moved API files from `sub_api` to `schemas` for better organization. Updated schema references to use `ApiError` instead of `Error`. Adjusted build configuration to include new schema folder in the API generation process.
This commit is contained in:
Teriuihi 2025-04-10 23:16:57 +02:00
parent 2b818fc297
commit 43a5dafd82
5 changed files with 18 additions and 9 deletions

View File

@ -44,11 +44,17 @@ dependencies {
implementation("org.springframework.boot:spring-boot-starter-web")
implementation("org.springframework.boot:spring-boot-starter-validation")
implementation("io.swagger.core.v3:swagger-annotations:2.2.20")
implementation("io.swagger.core.v3:swagger-models:2.2.8")
implementation("io.swagger.core.v3:swagger-core:2.2.8")
implementation("org.openapitools:jackson-databind-nullable:0.2.6")
implementation("org.springframework.hateoas:spring-hateoas:2.2.0")
}
tasks.register< GenerateTask>("generateJavaApi") {
inputs.file("${projectDir}/src/main/resources/api.yml")
inputs.file("${projectDir}/src/main/resources/config_backend.json")
inputs.dir("${projectDir}/src/main/resources/schemas")
generatorName.set("spring")
library.set("spring-boot")
inputSpec.set("${projectDir}/src/main/resources/api.yml")
@ -67,6 +73,9 @@ tasks.register< GenerateTask>("generateJavaApi") {
}
tasks.register<GenerateTask>("generateFrontendApi") {
inputs.file("${projectDir}/src/main/resources/api.yml")
inputs.file("${projectDir}/src/main/resources/config_backend.json")
inputs.dir("${projectDir}/src/main/resources/schemas")
generatorName.set("typescript-angular")
inputSpec.set("$rootDir/open_api/src/main/resources/api.yml")
outputDir.set("${projectDir}/../frontend/src/api")

View File

@ -13,10 +13,10 @@ tags:
description: Retrieves information about the staff team
paths:
/team/{team}:
$ref: './sub_api/team/team.yml#/getTeam'
$ref: './schemas/team/team.yml#/getTeam'
/history/{userType}/search/{type}:
$ref: './sub_api/bans/bans.yml#/getUserNames'
$ref: './schemas/bans/bans.yml#/getUserNames'
/history/{userType}/{type}/{user}:
$ref: './sub_api/bans/bans.yml#/getHistoryForUsers'
$ref: './schemas/bans/bans.yml#/getHistoryForUsers'
/history/{userType}/{type}/{uuid}:
$ref: './sub_api/bans/bans.yml#/getHistoryForUuid'
$ref: './schemas/bans/bans.yml#/getHistoryForUuid'

View File

@ -23,7 +23,7 @@ getUserNames:
content:
application/json:
schema:
$ref: "../generic/errors.yml#/components/schemas/Error"
$ref: "../generic/errors.yml#/components/schemas/ApiError"
getHistoryForUsers:
post:
tags:
@ -49,7 +49,7 @@ getHistoryForUsers:
content:
application/json:
schema:
$ref: "../generic/errors.yml#/components/schemas/Error"
$ref: "../generic/errors.yml#/components/schemas/ApiError"
getHistoryForUuid:
post:
tags:
@ -75,7 +75,7 @@ getHistoryForUuid:
content:
application/json:
schema:
$ref: "../generic/errors.yml#/components/schemas/Error"
$ref: "../generic/errors.yml#/components/schemas/ApiError"
components:
parameters:
HistoryType:

View File

@ -1,6 +1,6 @@
components:
schemas:
Error:
ApiError:
type: object
properties:
reason:

View File

@ -24,7 +24,7 @@ getTeam:
content:
application/json:
schema:
$ref: "../generic/errors.yml#/components/schemas/Error"
$ref: "../generic/errors.yml#/components/schemas/ApiError"
components:
schemas:
TeamMembers: