/** * Swagger Petstore * This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters. * * OpenAPI spec version: 1.0.0 * Contact: apiteam@swagger.io * * NOTE: This class is auto generated by the swagger code generator program. * https://github.com/swagger-api/swagger-codegen.git * Do not edit the class manually. */ /* * UserApi.h * * */ #ifndef UserApi_H_ #define UserApi_H_ #include #include #include #include #include "User.h" #include #include namespace io { namespace swagger { namespace server { namespace api { using namespace io::swagger::server::model; class UserApi { public: UserApi(Pistache::Address addr); virtual ~UserApi() {}; void init(size_t thr); void start(); void shutdown(); const std::string base = "/v2"; private: void setupRoutes(); void create_user_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void create_users_with_array_input_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void create_users_with_list_input_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void delete_user_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void get_user_by_name_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void login_user_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void logout_user_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void update_user_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); void user_api_default_handler(const Pistache::Rest::Request &request, Pistache::Http::ResponseWriter response); std::shared_ptr httpEndpoint; Pistache::Rest::Router router; /// /// Create user /// /// /// This can only be done by the logged in user. /// /// Created user object virtual void create_user(const User &body, Pistache::Http::ResponseWriter &response) = 0; /// /// Creates list of users with given input array /// /// /// /// /// List of user object virtual void create_users_with_array_input(const User &body, Pistache::Http::ResponseWriter &response) = 0; /// /// Creates list of users with given input array /// /// /// /// /// List of user object virtual void create_users_with_list_input(const User &body, Pistache::Http::ResponseWriter &response) = 0; /// /// Delete user /// /// /// This can only be done by the logged in user. /// /// The name that needs to be deleted virtual void delete_user(const std::string &username, Pistache::Http::ResponseWriter &response) = 0; /// /// Get user by user name /// /// /// /// /// The name that needs to be fetched. Use user1 for testing. virtual void get_user_by_name(const std::string &username, Pistache::Http::ResponseWriter &response) = 0; /// /// Logs user into the system /// /// /// /// /// The user name for login /// The password for login in clear text virtual void login_user(const Optional &username, const Optional &password, Pistache::Http::ResponseWriter &response) = 0; /// /// Logs out current logged in user session /// /// /// /// virtual void logout_user(Pistache::Http::ResponseWriter &response) = 0; /// /// Updated user /// /// /// This can only be done by the logged in user. /// /// name that need to be deleted /// Updated user object virtual void update_user(const std::string &username, const User &body, Pistache::Http::ResponseWriter &response) = 0; }; } } } } #endif /* UserApi_H_ */