RX JAVA + Retrofit sdk generation using Swagger codegen

前端 未结 3 1625
孤城傲影
孤城傲影 2021-01-02 06:38

I want to generate sdk using swagger codegen which can give me generated sdk with Observable as callback like below :

@POST(\"oauth/token\")
Obs

相关标签:
3条回答
  • 2021-01-02 07:03

    You can generate a Java Retrofit API client with RxJava enabled using the following command as an example:

    java -jar modules/swagger-codegen-cli/target/swagger-codegen-cli.jar generate \
    -l java -i http://petstore.swagger.io/v2/swagger.json \
    -c /var/tmp/retrofit2rx/java-petstore-retrofit2rx.json \
    -o /var/tmp/retrofit2rx 
    

    and the JSON config file (/var/tmp/retrofit2rx/java-petstore-retrofit2rx.json) defines the following:

    {
      "library": "retrofit2",
      "artifactId": "swagger-petstore-retrofit2-rx",
      "useRxJava": true,
      "hideGenerationTimestamp": true
    }
    

    You can then find the auto-generated code under the /var/tmp/retrofit2rx folder.

    Please use the latest stable version of Swagger Codegen instead: https://github.com/swagger-api/swagger-codegen/releases, or pull the latest master of swagger-codegen to enjoy the enhancements and bug fixes.

    To get a list of options for customizing the Java API client, please run the following command:

    java -jar modules/swagger-codegen-cli/target/swagger-codegen-cli.jar config-help -l java

    UPDATE: On May 2018, about 50 top contributors and template creators of Swagger Codegen decided to fork Swagger Codegen to maintain a community-driven version called OpenAPI Generator. Please refer to the Q&A for more information.

    0 讨论(0)
  • 2021-01-02 07:12

    For codegen you can use this for the JSON config file:

     {
        "library": "retrofit2",
        "artifactId": "swagger-petstore-retrofit2-rx",
        "useRxJava2": true,
        "hideGenerationTimestamp": true,
     }
    
    0 讨论(0)
  • 2021-01-02 07:20

    I would recommend Swagger Gradle Codegen, Generates Kotlin code and Retrofit interfaces, with RxJava2 for async calls, Moshi for serialization and ThreeTenABP for Data management

    0 讨论(0)
提交回复
热议问题