Benjamin Douglas 9058099e5b Add alias type definitions for Java
When a spec defines a Model at the top level that is a non-aggretate type (such
as string, number or boolean), it essentially represents an alias for the simple
type. For example, the following spec snippet creates an alias of the boolean
type that for all intents and purposes acts just like a regular boolean.

    definitions:
      JustABoolean:
        type: boolean

This can be modeled in some languages through built-in mechanisms, such as
typedefs in C++. Java, however, just not have a clean way of representing this.

This change introduces an internal mechanism for representing aliases. It
maintains a map in DefaultCodegen that tracks these types of definitions, and
wherever it sees the "JustABoolean" type in the spec, it generates code that
uses the built-in "Boolean" instead.

This functionality currenlty only applies to Java, but could be extended to
other languages later.

The change adds a few examples of this to the fake endpoint spec for testing,
which means all of the samples change as well.
2017-04-17 12:58:31 -07:00

4.8 KiB

swagger-android-client

Requirements

Building the API client library requires Maven to be installed.

Installation

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.

Maven users

Add this dependency to your project's POM:

<dependency>
    <groupId>io.swagger</groupId>
    <artifactId>swagger-android-client</artifactId>
    <version>1.0.0</version>
    <scope>compile</scope>
</dependency>

Gradle users

Add this dependency to your project's build file:

compile "io.swagger:swagger-android-client:1.0.0"

Others

At first generate the JAR by executing:

mvn package

Then manually install the following JARs:

  • target/swagger-android-client-1.0.0.jar
  • target/lib/*.jar

Getting Started

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


import io.swagger.client.api.PetApi;

public class PetApiExample {

    public static void main(String[] args) {
        PetApi apiInstance = new PetApi();
        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");
            e.printStackTrace();
        }
    }
}

Documentation for API Endpoints

All URIs are relative to http://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@wordnik.com