Lukas Woodtli d2e60f59b3
Cpp restbed server improvements (#13030)
* Keep old implementation of cpp-restbed generator as cpp-restbed-server-deprecated

* Refactor operation path processing

* Restructure samples directory to better allow writing tests

* Improve templates for cpp-restbed-server

Improve templates

* Add integration tests

* Improvement in templates for cpp-restbed-server

* Fix tests

* Improve cpp-restbed generator

* Improve cpp-restbed-server

* Add more tests

* Add suppoert for arrays of enums in query params

* Generate CMakeLists.txt

* Small improvements and example in Readme

* Add integration tests to maven project

* Update doc
2022-08-27 18:10:28 +08:00

124 lines
2.8 KiB
C++

/**
* OpenAPI Petstore
* This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI-Generator unset.
* https://openapi-generator.tech
* Do not edit the class manually.
*/
/*
* Pet.h
*
* A pet for sale in the pet store
*/
#ifndef Pet_H_
#define Pet_H_
#include "Tag.h"
#include <string>
#include "Category.h"
#include <vector>
#include <memory>
#include <vector>
#include <array>
#include <boost/property_tree/ptree.hpp>
namespace org {
namespace openapitools {
namespace server {
namespace model {
/// <summary>
/// A pet for sale in the pet store
/// </summary>
class Pet
{
public:
Pet() = default;
explicit Pet(boost::property_tree::ptree const& pt);
virtual ~Pet() = default;
std::string toJsonString(bool prettyJson = false);
void fromJsonString(std::string const& jsonString);
boost::property_tree::ptree toPropertyTree();
void fromPropertyTree(boost::property_tree::ptree const& pt);
/////////////////////////////////////////////
/// Pet members
/// <summary>
///
/// </summary>
int64_t getId() const;
void setId(int64_t value);
/// <summary>
///
/// </summary>
std::shared_ptr<Category> getCategory() const;
void setCategory(std::shared_ptr<Category> value);
/// <summary>
///
/// </summary>
std::string getName() const;
void setName(std::string value);
/// <summary>
///
/// </summary>
std::vector<std::string> getPhotoUrls() const;
void setPhotoUrls(std::vector<std::string> value);
/// <summary>
///
/// </summary>
std::vector<std::shared_ptr<Tag>> getTags() const;
void setTags(std::vector<std::shared_ptr<Tag>> value);
/// <summary>
/// pet status in the store
/// </summary>
std::string getStatus() const;
void setStatus(std::string value);
protected:
//////////////////////////////////////
// Override these for customization //
//////////////////////////////////////
virtual std::string toJsonString_internal(bool prettyJson = false);
virtual void fromJsonString_internal(std::string const& jsonString);
virtual boost::property_tree::ptree toPropertyTree_internal();
virtual void fromPropertyTree_internal(boost::property_tree::ptree const& pt);
protected:
int64_t m_Id = 0L;
std::shared_ptr<Category> m_Category;
std::string m_Name = "";
std::vector<std::string> m_PhotoUrls;
std::vector<std::shared_ptr<Tag>> m_Tags;
std::string m_Status = "";
const std::array<std::string, 3> m_StatusEnum = {
"available","pending","sold"
};
};
std::vector<Pet> createPetVectorFromJsonString(const std::string& json);
}
}
}
}
#endif /* Pet_H_ */