Cavoke  1.1.0
A Platform for creating and hosting multiplayer turn-based board games
Loading...
Searching...
No Matches
cavoke::server::controllers::RoomsController Class Reference
Inheritance diagram for cavoke::server::controllers::RoomsController:
[legend]

Public Member Functions

 RoomsController (std::shared_ptr< model::RoomsStorage > mRoomsStorage, std::shared_ptr< model::GamesStorage > mGamesStorage, std::shared_ptr< model::SessionsStorage > mSessionsStorage)
 
METHOD_LIST_BEGIN ADD_METHOD_TO (RoomsController::create_room, "/rooms/create", drogon::Post, "AuthFilter")
 
 ADD_METHOD_TO (RoomsController::get_info, "/rooms/{room_id}/get_info", drogon::Get, "AuthFilter")
 
 ADD_METHOD_TO (RoomsController::get_info_by_invite_code, "/rooms/get_info_by_invite_code", drogon::Get, "AuthFilter")
 
 ADD_METHOD_TO (RoomsController::join, "/rooms/join", drogon::Post, "AuthFilter")
 
 ADD_METHOD_TO (RoomsController::leave, "/rooms/{room_id}/leave", drogon::Post, "AuthFilter")
 
 ADD_METHOD_TO (RoomsController::create_session, "/rooms/{room_id}/create_session", drogon::Post, "AuthFilter")
 

Protected Member Functions

void create_room (const drogon::HttpRequestPtr &req, std::function< void(const drogon::HttpResponsePtr &)> &&callback)
 
void create_session (const drogon::HttpRequestPtr &req, std::function< void(const drogon::HttpResponsePtr &)> &&callback, const std::string &room_id)
 
void get_info (const drogon::HttpRequestPtr &req, std::function< void(const drogon::HttpResponsePtr &)> &&callback, const std::string &room_id)
 
void get_info_by_invite_code (const drogon::HttpRequestPtr &req, std::function< void(const drogon::HttpResponsePtr &)> &&callback)
 
void join (const drogon::HttpRequestPtr &req, std::function< void(const drogon::HttpResponsePtr &)> &&callback)
 
void leave (const drogon::HttpRequestPtr &req, std::function< void(const drogon::HttpResponsePtr &)> &&callback, const std::string &room_id)
 

Detailed Description

Definition at line 9 of file rooms_controller.h.

Constructor & Destructor Documentation

◆ RoomsController()

cavoke::server::controllers::RoomsController::RoomsController ( std::shared_ptr< model::RoomsStorage mRoomsStorage,
std::shared_ptr< model::GamesStorage mGamesStorage,
std::shared_ptr< model::SessionsStorage mSessionsStorage 
)

Definition at line 166 of file rooms_controller.cpp.

Member Function Documentation

◆ create_room()

void cavoke::server::controllers::RoomsController::create_room ( const drogon::HttpRequestPtr &  req,
std::function< void(const drogon::HttpResponsePtr &)> &&  callback 
)
protected

Definition at line 7 of file rooms_controller.cpp.

◆ create_session()

void cavoke::server::controllers::RoomsController::create_session ( const drogon::HttpRequestPtr &  req,
std::function< void(const drogon::HttpResponsePtr &)> &&  callback,
const std::string &  room_id 
)
protected

Definition at line 22 of file rooms_controller.cpp.

◆ get_info()

void cavoke::server::controllers::RoomsController::get_info ( const drogon::HttpRequestPtr &  req,
std::function< void(const drogon::HttpResponsePtr &)> &&  callback,
const std::string &  room_id 
)
protected

Definition at line 61 of file rooms_controller.cpp.

◆ get_info_by_invite_code()

void cavoke::server::controllers::RoomsController::get_info_by_invite_code ( const drogon::HttpRequestPtr &  req,
std::function< void(const drogon::HttpResponsePtr &)> &&  callback 
)
protected

Definition at line 83 of file rooms_controller.cpp.

◆ join()

void cavoke::server::controllers::RoomsController::join ( const drogon::HttpRequestPtr &  req,
std::function< void(const drogon::HttpResponsePtr &)> &&  callback 
)
protected

Definition at line 109 of file rooms_controller.cpp.

◆ leave()

void cavoke::server::controllers::RoomsController::leave ( const drogon::HttpRequestPtr &  req,
std::function< void(const drogon::HttpResponsePtr &)> &&  callback,
const std::string &  room_id 
)
protected

Definition at line 145 of file rooms_controller.cpp.


The documentation for this class was generated from the following files: