調査対象
- docker image: openapitools/openapi-generator-cli(latest) (2024/4/29時点)
- GENERATOR NAME: jaxrs-spec
インターフェースの各API名(メソッド名)
これのこと。
@POST @Consumes({ "application/json" }) @Produces({ "application/json" }) List<Petfoo> methodpost(@Valid @NotNull Petfoo petfoo);
基本的にはoperationIdをもとに決定する。
決定できない場合、{paths直下のパス名} + {HTTPメソッド名}となる。 基本的には必須項目なのでoperationIdで決定できる。
ただし、予約語や頭文字が半角数字が設定されている(Javaの言語仕様としての命名規則に逆らう)場合はおかしな挙動になる
operationIdをアッパーキャメルケースに変換したもの
operationIdをもとにメソッド名を決定できないとき※1 予約語、頭文字が数字などJavaの命名規則に反する場合:callXXXX
operationIdが空文字、半角スペース: {paths直下のパス名}+{HTTP methodName}
リクエストボディのmodelクラス
$refs
を使用した場合
$ref: "#/components/schemas/XXX"
のXXXがクラス名になる
$refs
を使用しない場合
{operationId} + {HTTP StatusCode} + "Request"
オブジェクトがネストする場合は複数のクラスが作成される
例:
schema: type: object properties: user: type: object properties: address: type: string email: type: string
{operationId} + {HTTP StatusCode} + "Request" {operationId} + {HTTP StatusCode} + "Request" + User
レスポンスのmodelクラス
$refs
を使用した場合
$ref: "#/components/schemas/XXX"
のXXXがクラス名になる
$refs
を使用しない場合
{operationId} + {HTTP StatusCode} + "Response"
オブジェクトがネストする場合はリクエストボディ同様に、複数のクラスが作成される