OpenAPITools/openapi-generator

[Server] support interface and implementation classes for API controllers

Open

#426 aperta il 1 lug 2018

Vedi su GitHub
 (11 commenti) (20 reazioni) (0 assegnatari)Java (7516 fork)batch import
HacktoberfestServer: AdaServer: C++Server: C-SharpServer: CeylonServer: EiffelServer: ElixirServer: ErlangServer: GoServer: HaskellServer: JavaServer: KotlinServer: NodejsServer: PHPServer: PerlServer: PythonServer: RubyServer: ScalaServer: Springhelp wanted

Metriche repository

Star
 (26.243 star)
Metriche merge PR
 (Merge medio 9g 1h) (123 PR mergiate in 30 g)

Descrizione

Description

For auto-generated server code, we want to generate 2 files for each API controller file:

  1. an interface, which will be overwritten by code generation
  2. an implementation class, which will not be overwritten by code generation

Java Spring has already implemented this: https://github.com/openapitools/openapi-generator/blob/master/modules/openapi-generator/src/main/resources/JavaSpring/api.mustache https://github.com/openapitools/openapi-generator/blob/master/modules/openapi-generator/src/main/resources/JavaSpring/apiController.mustache

The goal is to avoid application/business logic being overwritten by code generation so that there's less overhead when adding/deleting/updating endpoint definition.

Other server generators should leverage similar design.

openapi-generator version

Latest master

Related issues/PRs

https://github.com/swagger-api/swagger-codegen/issues/5431

Suggest a fix/enhancement

If anyone wants to contribute the enhancement, please reply to let us know.

Guida contributor