Scorum
betting_api.cpp
Go to the documentation of this file.
3 
4 namespace scorum {
5 namespace app {
6 
7 using namespace scorum::chain;
8 using namespace scorum::protocol;
9 
11  : _impl(std::make_unique<impl>(ctx.app.chain_database()->get_dba<betting_property_object>(),
12  ctx.app.chain_database()->get_dba<game_object>(),
13  ctx.app.chain_database()->get_dba<matched_bet_object>(),
14  ctx.app.chain_database()->get_dba<pending_bet_object>()))
15  , _guard(ctx.app.chain_database())
16 {
17 }
18 
19 betting_api::~betting_api() = default;
20 
22 {
23 }
24 
25 std::vector<matched_bet_api_object> betting_api::get_game_returns(const uuid_type& game_uuid) const
26 {
27  return _guard->with_read_lock([&] { return _impl->get_game_returns(game_uuid); });
28 }
29 
30 std::vector<winner_api_object> betting_api::get_game_winners(const uuid_type& game_uuid) const
31 {
32  return _guard->with_read_lock([&] { return _impl->get_game_winners(game_uuid); });
33 }
34 
35 std::vector<game_api_object> betting_api::get_games_by_status(const fc::flat_set<chain::game_status>& filter) const
36 {
37  return _guard->with_read_lock([&] { return _impl->get_games_by_status(filter); });
38 }
39 
40 std::vector<game_api_object> betting_api::get_games_by_uuids(const std::vector<uuid_type>& uuids) const
41 {
42  return _guard->with_read_lock([&] { return _impl->get_games_by_uuids(uuids); });
43 }
44 
45 std::vector<game_api_object> betting_api::lookup_games_by_id(game_id_type from, uint32_t limit) const
46 {
47  return _guard->with_read_lock([&] { return _impl->lookup_games_by_id(from, limit); });
48 }
49 
50 std::vector<matched_bet_api_object> betting_api::lookup_matched_bets(matched_bet_id_type from, uint32_t limit) const
51 {
52  return _guard->with_read_lock([&] { return _impl->lookup_matched_bets(from, limit); });
53 }
54 
55 std::vector<pending_bet_api_object> betting_api::lookup_pending_bets(pending_bet_id_type from, uint32_t limit) const
56 {
57  return _guard->with_read_lock([&] { return _impl->lookup_pending_bets(from, limit); });
58 }
59 
60 std::vector<matched_bet_api_object> betting_api::get_matched_bets(const std::vector<uuid_type>& uuids) const
61 {
62  return _guard->with_read_lock([&] { return _impl->get_matched_bets(uuids); });
63 }
64 
65 std::vector<pending_bet_api_object> betting_api::get_pending_bets(const std::vector<uuid_type>& uuids) const
66 {
67  return _guard->with_read_lock([&] { return _impl->get_pending_bets(uuids); });
68 }
69 
70 std::vector<matched_bet_api_object> betting_api::get_game_matched_bets(const uuid_type& uuid) const
71 {
72  return _guard->with_read_lock([&] { return _impl->get_game_matched_bets(uuid); });
73 }
74 
75 std::vector<pending_bet_api_object> betting_api::get_game_pending_bets(const uuid_type& uuid) const
76 {
77  return _guard->with_read_lock([&] { return _impl->get_game_pending_bets(uuid); });
78 }
79 
81 {
82  return _guard->with_read_lock([&] { return _impl->get_betting_properties(); });
83 }
84 
85 } // namespace app
86 } // namespace scorum
betting_api(const api_context &ctx)
Definition: betting_api.cpp:10
std::vector< pending_bet_api_object > lookup_pending_bets(chain::pending_bet_id_type from, uint32_t limit) const
Return pending bets.
Definition: betting_api.cpp:55
std::vector< winner_api_object > get_game_winners(const uuid_type &game_uuid) const
Returns all winners for particular game.
Definition: betting_api.cpp:30
std::vector< pending_bet_api_object > get_game_pending_bets(const uuid_type &uuid) const
Return pending bets for game.
Definition: betting_api.cpp:75
std::vector< pending_bet_api_object > get_pending_bets(const std::vector< uuid_type > &uuids) const
Return pending bets.
Definition: betting_api.cpp:65
std::vector< matched_bet_api_object > get_game_returns(const uuid_type &game_uuid) const
Returns bets with draw status.
Definition: betting_api.cpp:25
std::vector< matched_bet_api_object > lookup_matched_bets(chain::matched_bet_id_type from, uint32_t limit) const
Returns matched bets.
Definition: betting_api.cpp:50
betting_property_api_object get_betting_properties() const
Return betting properties.
Definition: betting_api.cpp:80
std::vector< game_api_object > lookup_games_by_id(chain::game_id_type from, uint32_t limit) const
Returns games.
Definition: betting_api.cpp:45
std::vector< game_api_object > get_games_by_uuids(const std::vector< uuid_type > &uuids) const
Returns games.
Definition: betting_api.cpp:40
std::vector< matched_bet_api_object > get_game_matched_bets(const uuid_type &uuid) const
Returns matched bets for game.
Definition: betting_api.cpp:70
std::vector< game_api_object > get_games_by_status(const fc::flat_set< chain::game_status > &filter) const
Returns games.
Definition: betting_api.cpp:35
std::vector< matched_bet_api_object > get_matched_bets(const std::vector< uuid_type > &uuids) const
Returns matched bets.
Definition: betting_api.cpp:60
Definition: asset.cpp:15
boost::uuids::uuid uuid_type
Definition: types.hpp:53