hahny93 851ddecda3
Update Java/Feign api.mustache to accept its own convinience Map Class (#14008)
* Update Java/Feign api.mustache to accept convinience Map

Hi, I just saw, that the generated Map Class is never used outside of tests, but it would be the perfect fit for the changed mehods, as its use-case is exactly the same.

Also a useful change to prevent problems with Collection types and their generics parameters (f.e. Map<x, y>). See: https://stackoverflow.com/questions/62823341/openapi-generator-maven-plugin-breaks-old-feign-with-querymap

* PR checklist

Steps as requested per checklist: done.
2022-12-21 14:44:03 +08:00
..
2021-09-09 12:49:03 +08:00
2021-08-17 18:37:51 +08:00

petstore-feign-no-nullable

Requirements

Building the API client library requires Maven to be installed.

Installation & Usage

To install the API client library to your local Maven repository, simply execute:

mvn install

To deploy it to a remote Maven repository instead, configure the settings of the repository and execute:

mvn deploy

Refer to the official documentation for more information.

After the client library is installed/deployed, you can use it in your Maven project by adding the following to your pom.xml:

<dependency>
    <groupId>org.openapitools</groupId>
    <artifactId>petstore-feign-no-nullable</artifactId>
    <version>1.0.0</version>
    <scope>compile</scope>
</dependency>

And to use the api you can follow the examples bellow:


    //Set bearer token manually
    ApiClient apiClient = new ApiClient("petstore_auth_client");
    apiClient.setBasePath("https://localhost:8243/petstore/1/");
    apiClient.setAccessToken("TOKEN", 10000);

    //Use api key
    ApiClient apiClient = new ApiClient("api_key", "API KEY");
    apiClient.setBasePath("https://localhost:8243/petstore/1/");

    //Use http basic authentication
    ApiClient apiClient = new ApiClient("basicAuth");
    apiClient.setBasePath("https://localhost:8243/petstore/1/");
    apiClient.setCredentials("username", "password");

    //Oauth password
    ApiClient apiClient = new ApiClient("oauth_password");
    apiClient.setBasePath("https://localhost:8243/petstore/1/");
    apiClient.setOauthPassword("username", "password", "client_id", "client_secret");

    //Oauth client credentials flow
    ApiClient apiClient = new ApiClient("oauth_client_credentials");
    apiClient.setBasePath("https://localhost:8243/petstore/1/");
    apiClient.setClientCredentials("client_id", "client_secret");

    PetApi petApi = apiClient.buildClient(PetApi.class);
    Pet petById = petApi.getPetById(12345L);

    System.out.println(petById);
  }

Recommendation

It's recommended to create an instance of ApiClient per thread in a multithreaded environment to avoid any potential issues.

Author