/**
* 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 (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
/*
 * ApiBase.h
 *
 * Generalization of the Api classes
 */

#ifndef ApiBase_H_
#define ApiBase_H_

#include <pistache/router.h>
#include <memory>

namespace org::openapitools::server::api
{

class ApiBase {
public:
    explicit ApiBase(const std::shared_ptr<Pistache::Rest::Router>& rtr) : router(rtr) {};
    virtual ~ApiBase() = default;
    virtual void init() = 0;

protected:
    const std::shared_ptr<Pistache::Rest::Router> router;
};

} // namespace org::openapitools::server::api

#endif /* ApiBase_H_ */
