Route& Router::METHOD(
const Router&
router)
const { \
return rootRoute->METHOD(*
router.rootRoute.get()); \
} \
Route& Router::METHOD(
const std::string& relativeMountPath,
const Router&
router)
const { \
return rootRoute->METHOD(relativeMountPath, *
router.rootRoute.get()); \
} \
Route& Router::METHOD(const std::string& relativeMountPath, \
const std::function<void(const std::shared_ptr<Request>&, const std::shared_ptr<Response>&, Next&)>& lambda) \
const { \
return rootRoute->METHOD(relativeMountPath, lambda); \
} \
Route& Router::METHOD(const std::function<void(const std::shared_ptr<Request>&, const std::shared_ptr<Response>&, Next&)>& lambda) \
const { \
return rootRoute->METHOD(lambda); \
} \
Route& Router::METHOD(const std::string& relativeMountPath, \
const std::function<void(const std::shared_ptr<Request>&, const std::shared_ptr<Response>&)>& lambda) const { \
return rootRoute->METHOD(relativeMountPath, lambda); \
} \
Route& Router::METHOD(const std::function<void(const std::shared_ptr<Request>&, const std::shared_ptr<Response>&)>& lambda) const { \
return rootRoute->METHOD(lambda); \
}
Router router(database::mariadb::MariaDBClient &db)
26#define DEFINE_ROUTER_REQUESTMETHOD(METHOD, HTTP_METHOD) \
27 Route& Router::METHOD(const Router& router) const { \
28 return rootRoute->METHOD(*router.rootRoute.get()); \
29 } \
30 Route& Router::METHOD(const std::string& relativeMountPath, const Router& router) const { \
31 return rootRoute->METHOD(relativeMountPath, *router.rootRoute.get()); \
32 } \
33 Route& Router::METHOD(const std::string& relativeMountPath, \
34 const std::function<void(const std::shared_ptr<Request>&, const std::shared_ptr<Response>&, Next&)>& lambda) \
35 const { \
36 return rootRoute->METHOD(relativeMountPath, lambda); \
37 } \
38 Route& Router::METHOD(const std::function<void(const std::shared_ptr<Request>&, const std::shared_ptr<Response>&, Next&)>& lambda) \
39 const { \
40 return rootRoute->METHOD(lambda); \
41 } \
42 Route& Router::METHOD(const std::string& relativeMountPath, \
43 const std::function<void(const std::shared_ptr<Request>&, const std::shared_ptr<Response>&)>& lambda) const { \
44 return rootRoute->METHOD(relativeMountPath, lambda); \
45 } \
46 Route& Router::METHOD(const std::function<void(const std::shared_ptr<Request>&, const std::shared_ptr<Response>&)>& lambda) const { \
47 return rootRoute->METHOD(lambda); \
48 }