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-web")
implementation("org.springframework.boot:spring-boot-starter-validation") implementation("org.springframework.boot:spring-boot-starter-validation")
implementation("io.swagger.core.v3:swagger-annotations:2.2.20") 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.openapitools:jackson-databind-nullable:0.2.6")
implementation("org.springframework.hateoas:spring-hateoas:2.2.0") implementation("org.springframework.hateoas:spring-hateoas:2.2.0")
} }
tasks.register< GenerateTask>("generateJavaApi") { 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") generatorName.set("spring")
library.set("spring-boot") library.set("spring-boot")
inputSpec.set("${projectDir}/src/main/resources/api.yml") inputSpec.set("${projectDir}/src/main/resources/api.yml")
@ -67,6 +73,9 @@ tasks.register< GenerateTask>("generateJavaApi") {
} }
tasks.register<GenerateTask>("generateFrontendApi") { 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") generatorName.set("typescript-angular")
inputSpec.set("$rootDir/open_api/src/main/resources/api.yml") inputSpec.set("$rootDir/open_api/src/main/resources/api.yml")
outputDir.set("${projectDir}/../frontend/src/api") outputDir.set("${projectDir}/../frontend/src/api")

View File

@ -13,10 +13,10 @@ tags:
description: Retrieves information about the staff team description: Retrieves information about the staff team
paths: paths:
/team/{team}: /team/{team}:
$ref: './sub_api/team/team.yml#/getTeam' $ref: './schemas/team/team.yml#/getTeam'
/history/{userType}/search/{type}: /history/{userType}/search/{type}:
$ref: './sub_api/bans/bans.yml#/getUserNames' $ref: './schemas/bans/bans.yml#/getUserNames'
/history/{userType}/{type}/{user}: /history/{userType}/{type}/{user}:
$ref: './sub_api/bans/bans.yml#/getHistoryForUsers' $ref: './schemas/bans/bans.yml#/getHistoryForUsers'
/history/{userType}/{type}/{uuid}: /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: content:
application/json: application/json:
schema: schema:
$ref: "../generic/errors.yml#/components/schemas/Error" $ref: "../generic/errors.yml#/components/schemas/ApiError"
getHistoryForUsers: getHistoryForUsers:
post: post:
tags: tags:
@ -49,7 +49,7 @@ getHistoryForUsers:
content: content:
application/json: application/json:
schema: schema:
$ref: "../generic/errors.yml#/components/schemas/Error" $ref: "../generic/errors.yml#/components/schemas/ApiError"
getHistoryForUuid: getHistoryForUuid:
post: post:
tags: tags:
@ -75,7 +75,7 @@ getHistoryForUuid:
content: content:
application/json: application/json:
schema: schema:
$ref: "../generic/errors.yml#/components/schemas/Error" $ref: "../generic/errors.yml#/components/schemas/ApiError"
components: components:
parameters: parameters:
HistoryType: HistoryType:

View File

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

View File

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