Compare commits

...

4 commits

Author SHA1 Message Date
Srdjan Obucina
0524c0c216 Fix build error after merging with develop branch 2019-09-03 14:01:31 +02:00
Srdjan Obucina
6743860f42 Merge branch 'develop' into rng_api 2019-09-03 13:57:56 +02:00
Srdjan Obucina
fa5d3eccdf Merge branch 'qa_gpos_18.04_gcc7_fix' into rng_api 2019-08-22 17:08:00 +02:00
Srdjan Obucina
654e998d89 API endpoint for reading random numbers from the witness
Test cmd:
curl --data '{"method": "call", "params": ["database", "get_random_number", [1000]], "jsonrpc": "2.0", "id": 1}' http://127.0.0.1:8090/ws
curl --data '{"method": "call", "params": ["database", "get_random_number", [5000]], "jsonrpc": "2.0", "id": 1}' http://127.0.0.1:8090/ws
curl --data '{"method": "call", "params": ["database", "get_random_number", [1000000]], "jsonrpc": "2.0", "id": 1}' http://127.0.0.1:8090/ws
2019-08-19 19:55:26 +02:00
2 changed files with 31 additions and 1 deletions

View file

@ -173,6 +173,8 @@ class database_api_impl : public std::enable_shared_from_this<database_api_impl>
vector<tournament_object> get_tournaments_by_state(tournament_id_type stop, unsigned limit, tournament_id_type start, tournament_state state);
vector<tournament_id_type> get_registered_tournaments(account_id_type account_filter, uint32_t limit) const;
// rng
int64_t get_random_number(uint64_t bound) const;
//private:
template<typename T>
@ -2128,6 +2130,22 @@ vector<tournament_id_type> database_api_impl::get_registered_tournaments(account
return tournament_ids;
}
//////////////////////////////////////////////////////////////////////
// //
// Random numbers //
// //
//////////////////////////////////////////////////////////////////////
int64_t database_api::get_random_number(uint64_t bound) const
{
return my->get_random_number(bound);
}
int64_t database_api_impl::get_random_number(uint64_t bound) const {
int64_t result = _db.get_random_bits(bound);
return result;
}
//////////////////////////////////////////////////////////////////////
// //
// Private methods //

View file

@ -667,7 +667,16 @@ class database_api
*/
vector<tournament_id_type> get_registered_tournaments(account_id_type account_filter, uint32_t limit) const;
private:
//////////
// RNG //
//////////
/**
* @return Current Random number
*/
int64_t get_random_number(uint64_t bound) const;
private:
std::shared_ptr< database_api_impl > my;
};
@ -794,4 +803,7 @@ FC_API(graphene::app::database_api,
(get_tournaments_by_state)
(get_tournaments )
(get_registered_tournaments)
// rngs
(get_random_number)
)