java-tutorials/spring-swagger-codegen/spring-openapi-generator-ap...
Dhawal Kapil 1ab0a19d25 Java 3590 (#11367) (#11380)
* Java 3590 (#11367)

* JAVA-3590: updating junit-jupiter dependency in the main pom.xml

* resolving unnecessary mockito stubbings exception

* adding junit-bom in dependency management

* fixing tests which were not getting discovered

* Revert "fixing tests which were not getting discovered"

This reverts commit 2e9ed8df42eb96f7e0929167aabbc2ddd374a263.

* fixing tests in ninja, open-liberty and spring-ejb

* removing junit4 dependency and replacing it with junit-vintage-engine

* removing junit4 dependency and replacing it with junit-vintage-engine in testing-modules, maven-modules and aws-lambda

* removing junit dependency and replacing it with junit-vintage-engine

* removing junit and replacing it with junit-vintage-engine

* fixing tests that were not getting discovered due to old version of junit:junit

* updated failsafe plugin configuration to skip integration tests in blade

* fixing tests that were not getting discovered due to old version of junit:junit

* fixing tests in libraries and libraries-2 modules

Co-authored-by: chaos2418 <>

* Java 3590 - fixing integration tests in restx and spring-5-webflux (#11382)

* JAVA-3590: updating junit-jupiter dependency in the main pom.xml

* resolving unnecessary mockito stubbings exception

* adding junit-bom in dependency management

* fixing tests which were not getting discovered

* Revert "fixing tests which were not getting discovered"

This reverts commit 2e9ed8df42eb96f7e0929167aabbc2ddd374a263.

* fixing tests in ninja, open-liberty and spring-ejb

* removing junit4 dependency and replacing it with junit-vintage-engine

* removing junit4 dependency and replacing it with junit-vintage-engine in testing-modules, maven-modules and aws-lambda

* removing junit dependency and replacing it with junit-vintage-engine

* removing junit and replacing it with junit-vintage-engine

* fixing tests that were not getting discovered due to old version of junit:junit

* updated failsafe plugin configuration to skip integration tests in blade

* fixing tests that were not getting discovered due to old version of junit:junit

* fixing tests in libraries and libraries-2 modules

* fixing integration tests in restx and spring-5-webflux

Co-authored-by: chaos2418 <>

Co-authored-by: chaos2418 <92030908+chaos2418@users.noreply.github.com>
2021-10-29 09:37:04 +05:30
..
.openapi-generator
docs
gradle/wrapper
src
.openapi-generator-ignore
.travis.yml
README.md
build.gradle
build.sbt
git_push.sh
gradle.properties
gradlew
gradlew.bat
pom.xml
settings.gradle

README.md

spring-openapi-generator-api-client

Swagger Petstore

  • API version: 1.0.3

  • Build date: 2020-03-15T06:14:01.568992-05:00[America/Chicago]

This is a sample server Petstore server. You can find out more about Swagger at http://swagger.io or on irc.freenode.net, #swagger. For this sample, you can use the api key special-key to test the authorization filters.

Automatically generated by the OpenAPI Generator

Requirements

Building the API client library requires:

  1. Java 1.8+
  2. Maven/Gradle

Installation

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

mvn clean install

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

mvn clean deploy

Refer to the OSSRH Guide for more information.

Maven users

Add this dependency to your project's POM:

<dependency>
  <groupId>com.baeldung</groupId>
  <artifactId>spring-openapi-generator-api-client</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <scope>compile</scope>
</dependency>

Gradle users

Add this dependency to your project's build file:

compile "com.baeldung:spring-openapi-generator-api-client:0.0.1-SNAPSHOT"

Others

At first generate the JAR by executing:

mvn clean package

Then manually install the following JARs:

  • target/spring-openapi-generator-api-client-0.0.1-SNAPSHOT.jar
  • target/lib/*.jar

Getting Started

Please follow the installation instruction and execute the following Java code:


import com.baeldung.petstore.client.invoker.*;
import com.baeldung.petstore.client.invoker.auth.*;
import com.baeldung.petstore.client.model.*;
import com.baeldung.petstore.client.api.PetApi;

public class PetApiExample {

    public static void main(String[] args) {
        ApiClient defaultClient = Configuration.getDefaultApiClient();
        defaultClient.setBasePath("https://petstore.swagger.io/v2");
        
        // Configure OAuth2 access token for authorization: petstore_auth
        OAuth petstore_auth = (OAuth) defaultClient.getAuthentication("petstore_auth");
        petstore_auth.setAccessToken("YOUR ACCESS TOKEN");

        PetApi apiInstance = new PetApi(defaultClient);
        Pet body = new Pet(); // Pet | Pet object that needs to be added to the store
        try {
            apiInstance.addPet(body);
        } catch (ApiException e) {
            System.err.println("Exception when calling PetApi#addPet");
            System.err.println("Status code: " + e.getCode());
            System.err.println("Reason: " + e.getResponseBody());
            System.err.println("Response headers: " + e.getResponseHeaders());
            e.printStackTrace();
        }
    }
}

Documentation for API Endpoints

All URIs are relative to https://petstore.swagger.io/v2

Class Method HTTP request Description
PetApi addPet POST /pet Add a new pet to the store
PetApi deletePet DELETE /pet/{petId} Deletes a pet
PetApi findPetsByStatus GET /pet/findByStatus Finds Pets by status
PetApi findPetsByTags GET /pet/findByTags Finds Pets by tags
PetApi getPetById GET /pet/{petId} Find pet by ID
PetApi updatePet PUT /pet Update an existing pet
PetApi updatePetWithForm POST /pet/{petId} Updates a pet in the store with form data
PetApi uploadFile POST /pet/{petId}/uploadImage uploads an image
StoreApi deleteOrder DELETE /store/order/{orderId} Delete purchase order by ID
StoreApi getInventory GET /store/inventory Returns pet inventories by status
StoreApi getOrderById GET /store/order/{orderId} Find purchase order by ID
StoreApi placeOrder POST /store/order Place an order for a pet
UserApi createUser POST /user Create user
UserApi createUsersWithArrayInput POST /user/createWithArray Creates list of users with given input array
UserApi createUsersWithListInput POST /user/createWithList Creates list of users with given input array
UserApi deleteUser DELETE /user/{username} Delete user
UserApi getUserByName GET /user/{username} Get user by user name
UserApi loginUser GET /user/login Logs user into the system
UserApi logoutUser GET /user/logout Logs out current logged in user session
UserApi updateUser PUT /user/{username} Updated user

Documentation for Models

Documentation for Authorization

Authentication schemes defined for the API:

api_key

  • Type: API key
  • API key parameter name: api_key
  • Location: HTTP header

petstore_auth

Recommendation

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

Author

apiteam@swagger.io