Anders Aaen Springborg 4e48dae8e4
New generator | Arduino cpp (#9489)
* initil tiny client generator

* Helper string

* WIP: added helper file with json helper functions

* WIP: model implementation.. Working on JSON

* Added codegen files for model and helper

* WIP: toJson()

* Added mapping configurations

* Upadet string compare

* Removed redundant namespaces

* Added files for example

* fixed syntax errors

* fixed syntax errors

* header generation

* unittest example for pet class

* Refactored mustache & fixed logical errors

* WIP: unit test mustache format

* Removed legacy file

* mustache service

* Declare service in Java file

* Removed legacy file

* removed legacy code

* Documentation

* Added folder structure + new supporting files

* Added file to run all unittests

* Refactored unit tests

* typemappings and new paths

* First service impl

* Added esp32 and esp8266 env

* Added default values

* Added cli option to specify controller

* added type decl method

* Added stringify methods

* service get requests

* Fix helper header

* post merge fix

* fix long test

* Tiny namespace

* remove shared pointer

* include petapi

* stringify

* return problems

* Canged logic for response-body handling

* Implemented last logic for reponse handeling

* Implemented constructor logic

* first tiny sample

* update basepath to petstore v3

* standard main example

* root certificate example

* root folder

* TODO cleanup

* exclude features

* supports delete again!👷

* remove todo 

* new main example ❣️

* new main example ❣️

* Make our feature set realistic

* fix indentation

* HTTP / HTTPS Connection

* Root certificate sample

* https vs http 👨🏻‍🔬

* fix lint in template

* default value for controller in config

* new readme 📜

* remove old comments

* removed unused testfile

* no default root certificate

* new main

* remove test

* Update platformio.ini.mustache

🤷‍♂️

* Update platformio.ini.mustache

remove native

* added support info

* Add namespace to Pet 🐅

* bourne compatibility fix

* spelling error in python file

* bourne python script 🐍

* Version bump

* Add bourne script to readme

* update main sample, from template

* pre_compiling_bourne.py.mustache to samples folder 📃

* set header Content'type to json

* map todo🗺️

* remove unused debug flag⚒️

* added support for ESP8266 ༼ つ ◕_◕ ༽つ

* added new sample for ESP32 📀

* 🎯

* removed use of namespace std 

* removed use of "__" in variables

* removed unused code in destructor

* fixed type comparison

* move default ctor to header

* added zero initialized primitive variables

* moved variable to TypeMappings

* updated ifndefines

* Extra comment for build error in standard example 🦸🏽‍

* afer cpp-ish cast from std::string to uint8* cast🏰

* excluded maps type

* Documentation og generator

Co-authored-by: kaareHH <kaare.hattel@gmail.com>
Co-authored-by: mkakbas <45030188+mkakbas@users.noreply.github.com>
Co-authored-by: mkakbas <martinkandersen1@gmail.com>
2021-05-24 11:11:44 +08:00

2.9 KiB

Documentation for OpenAPI Petstore

This is a client generator for microcontrollers on the Espressif32 platform and the Arduino framework After the client have been generated, you have to change these following variablies:

  • root.cert | Provide your service root certificate.
  • src/main.cpp | Change wifi name
  • src/main.cpp | Change wifi password
  • lib/service/AbstractService.h | Change to your url

Documentation for OpenAPI Petstore 1.0.0 Tiny client cpp (Arduino)

The project is structured like this:

samples/client/petstore/tiny/cpp/
├── lib
│   ├── Models
│   ├── service
│   └── TestFiles
├── platformio.ini
├── pre_compiling_bourne.py
├── README.md
├── root.cert
├── src
│   └── main.cpp
└── test
    └── RunTests.cpp

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

PetApi

Method HTTP request Description
addPet POST /pet Add a new pet to the store.
deletePet DELETE /pet/{petId} Deletes a pet.
findPetsByStatus GET /pet/findByStatus Finds Pets by status.
findPetsByTags GET /pet/findByTags Finds Pets by tags.
getPetById GET /pet/{petId} Find pet by ID.
updatePet PUT /pet Update an existing pet.
updatePetWithForm POST /pet/{petId} Updates a pet in the store with form data.
uploadFile POST /pet/{petId}/uploadImage uploads an image.

StoreApi

Method HTTP request Description
deleteOrder DELETE /store/order/{orderId} Delete purchase order by ID.
getInventory GET /store/inventory Returns pet inventories by status.
getOrderById GET /store/order/{orderId} Find purchase order by ID.
placeOrder POST /store/order Place an order for a pet.

UserApi

Method HTTP request Description
createUser POST /user Create user.
createUsersWithArrayInput POST /user/createWithArray Creates list of users with given input array.
createUsersWithListInput POST /user/createWithList Creates list of users with given input array.
deleteUser DELETE /user/{username} Delete user.
getUserByName GET /user/{username} Get user by user name.
loginUser GET /user/login Logs user into the system.
logoutUser GET /user/logout Logs out current logged in user session.
updateUser PUT /user/{username} Updated user.

What are the Model files for the data structures/objects?

Class Description
ApiResponse Describes the result of uploading an image resource
Category A category for a pet
Order An order for a pets from the pet store
Pet A pet for sale in the pet store
Tag A tag for a pet
User A User who is purchasing from the pet store