Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 6 additions & 3 deletions src/common/monero_rpc_connection.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -424,8 +424,7 @@ namespace monero {
else deserialize_rpc_response(result, response, uri, request.m_method.get());
}

std::shared_ptr<monero_rpc_connection> monero_rpc_connection::from_property_tree(const boost::property_tree::ptree& node) {
std::shared_ptr<monero_rpc_connection> connection = std::make_shared<monero_rpc_connection>();
void monero_rpc_connection::from_property_tree(const boost::property_tree::ptree& node, const std::shared_ptr<monero_rpc_connection>& connection) {
for (boost::property_tree::ptree::const_iterator it = node.begin(); it != node.end(); ++it) {
std::string key = it->first;
if (key == std::string("uri")) connection->m_uri = it->second.data();
Expand All @@ -436,6 +435,10 @@ namespace monero {
else if (key == std::string("priority")) connection->m_priority = it->second.get_value<int>();
else if (key == std::string("timeoutMs")) connection->m_timeout_ms = it->second.get_value<uint32_t>();
}
return connection;
}

std::shared_ptr<monero_rpc_connection> monero_rpc_connection::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_rpc_connection>(json);
}

}
3 changes: 2 additions & 1 deletion src/common/monero_rpc_connection.h
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,8 @@ namespace monero {
boost::optional<uint64_t> m_response_time; // automatically set by calling check_connection()
int m_priority; // priority relative to other connections where 1 is highest, then 2, etc, and 0 is lowest (default)

static std::shared_ptr<monero_rpc_connection> from_property_tree(const boost::property_tree::ptree& node);
static void from_property_tree(const boost::property_tree::ptree& node, const std::shared_ptr<monero_rpc_connection>& connection);
static std::shared_ptr<monero_rpc_connection> deserialize(const std::string& json);

/**
* Checks RPC connection priority order.
Expand Down
132 changes: 132 additions & 0 deletions src/daemon/monero_daemon_model.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,10 @@ namespace monero {
}
}

std::shared_ptr<monero_version> monero_version::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_version>(json);
}

// --------------------------- SSL OPTIONS ---------------------------

rapidjson::Value ssl_options::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
Expand Down Expand Up @@ -149,6 +153,10 @@ namespace monero {
}
}

std::shared_ptr<ssl_options> ssl_options::deserialize(const std::string& json) {
return gen_utils::deserialize<ssl_options>(json);
}

// ------------------------- MONERO BLOCK HEADER ----------------------------

rapidjson::Value monero_block_header::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
Expand Down Expand Up @@ -214,6 +222,10 @@ namespace monero {
}
}

std::shared_ptr<monero_block_header> monero_block_header::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_block_header>(json);
}

std::shared_ptr<monero_block_header> monero_block_header::copy(const std::shared_ptr<monero_block_header>& src, const std::shared_ptr<monero_block_header>& tgt) const {
if (this != src.get()) throw std::runtime_error("this block header != src");
tgt->m_hash = src->m_hash;
Expand Down Expand Up @@ -314,6 +326,10 @@ namespace monero {
}
}

std::shared_ptr<monero_block> monero_block::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_block>(json);
}

std::shared_ptr<monero_block> monero_block::copy(const std::shared_ptr<monero_block>& src, const std::shared_ptr<monero_block>& tgt) const {
if (this != src.get()) throw std::runtime_error("this block != src");
monero_block_header::copy(std::static_pointer_cast<monero_block_header>(src), std::static_pointer_cast<monero_block_header>(tgt));
Expand Down Expand Up @@ -501,6 +517,10 @@ namespace monero {
}
}

std::shared_ptr<monero_tx> monero_tx::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_tx>(json);
}

std::shared_ptr<monero_tx> monero_tx::copy(const std::shared_ptr<monero_tx>& src, const std::shared_ptr<monero_tx>& tgt) const {
MTRACE("monero_tx::copy(const std::shared_ptr<monero_tx>& src, const std::shared_ptr<monero_tx>& tgt)");
tgt->m_hash = src->m_hash;
Expand Down Expand Up @@ -690,6 +710,10 @@ namespace monero {
}
}

std::shared_ptr<monero_key_image> monero_key_image::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_key_image>(json);
}

std::vector<std::shared_ptr<monero_key_image>> monero_key_image::deserialize_key_images(const std::string& key_images_json) {

// deserialize json to property node
Expand Down Expand Up @@ -776,6 +800,10 @@ namespace monero {
}
}

std::shared_ptr<monero_output> monero_output::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_output>(json);
}

std::shared_ptr<monero_output> monero_output::copy(const std::shared_ptr<monero_output>& src, const std::shared_ptr<monero_output>& tgt) const {
if (this != src.get()) throw std::runtime_error("this != src");
tgt->m_tx = src->m_tx; // reference same parent tx by default
Expand Down Expand Up @@ -818,6 +846,10 @@ namespace monero {
}
}

std::shared_ptr<monero_rpc_payment_info> monero_rpc_payment_info::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_rpc_payment_info>(json);
}

rapidjson::Value monero_rpc_payment_info::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root(rapidjson::kObjectType);
Expand Down Expand Up @@ -850,6 +882,10 @@ namespace monero {
}
}

std::shared_ptr<monero_alt_chain> monero_alt_chain::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_alt_chain>(json);
}

rapidjson::Value monero_alt_chain::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root(rapidjson::kObjectType);
Expand Down Expand Up @@ -884,6 +920,10 @@ namespace monero {
}
}

std::shared_ptr<monero_ban> monero_ban::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_ban>(json);
}

rapidjson::Value monero_ban::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root(rapidjson::kObjectType);
Expand Down Expand Up @@ -914,6 +954,10 @@ namespace monero {
}
}

std::shared_ptr<monero_prune_result> monero_prune_result::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_prune_result>(json);
}

rapidjson::Value monero_prune_result::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root(rapidjson::kObjectType);
Expand Down Expand Up @@ -947,6 +991,10 @@ namespace monero {
}
}

std::shared_ptr<monero_mining_status> monero_mining_status::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_mining_status>(json);
}

rapidjson::Value monero_mining_status::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root(rapidjson::kObjectType);
Expand Down Expand Up @@ -980,6 +1028,10 @@ namespace monero {
}
}

std::shared_ptr<monero_miner_tx_sum> monero_miner_tx_sum::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_miner_tx_sum>(json);
}

rapidjson::Value monero_miner_tx_sum::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root(rapidjson::kObjectType);
Expand Down Expand Up @@ -1014,6 +1066,10 @@ namespace monero {
}
}

std::shared_ptr<monero_block_template> monero_block_template::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_block_template>(json);
}

rapidjson::Value monero_block_template::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root(rapidjson::kObjectType);
Expand Down Expand Up @@ -1063,6 +1119,10 @@ namespace monero {
}
}

std::shared_ptr<monero_miner_data> monero_miner_data::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_miner_data>(json);
}

rapidjson::Value monero_miner_data::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root = monero_rpc_payment_info::to_rapidjson_val(allocator);
Expand Down Expand Up @@ -1097,6 +1157,10 @@ namespace monero {
}
}

std::shared_ptr<monero_auxiliary_pow> monero_auxiliary_pow::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_auxiliary_pow>(json);
}

rapidjson::Value monero_auxiliary_pow::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root(rapidjson::kObjectType);
Expand Down Expand Up @@ -1131,6 +1195,10 @@ namespace monero {
}
}

std::shared_ptr<monero_add_auxiliary_pow_result> monero_add_auxiliary_pow_result::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_add_auxiliary_pow_result>(json);
}

rapidjson::Value monero_add_auxiliary_pow_result::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root = monero_rpc_payment_info::to_rapidjson_val(allocator);
Expand Down Expand Up @@ -1167,6 +1235,10 @@ namespace monero {
}
}

std::shared_ptr<monero_connection_span> monero_connection_span::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_connection_span>(json);
}

rapidjson::Value monero_connection_span::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root(rapidjson::kObjectType);
Expand Down Expand Up @@ -1232,6 +1304,10 @@ namespace monero {
}
}

std::shared_ptr<monero_peer> monero_peer::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_peer>(json);
}

rapidjson::Value monero_peer::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root(rapidjson::kObjectType);
Expand Down Expand Up @@ -1298,6 +1374,10 @@ namespace monero {
}
}

std::shared_ptr<monero_submit_tx_result> monero_submit_tx_result::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_submit_tx_result>(json);
}

rapidjson::Value monero_submit_tx_result::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root = monero_rpc_payment_info::to_rapidjson_val(allocator);
Expand Down Expand Up @@ -1341,6 +1421,10 @@ namespace monero {
}
}

std::shared_ptr<monero_output_distribution_entry> monero_output_distribution_entry::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_output_distribution_entry>(json);
}

rapidjson::Value monero_output_distribution_entry::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root(rapidjson::kObjectType);
Expand Down Expand Up @@ -1370,6 +1454,10 @@ namespace monero {
}
}

std::shared_ptr<monero_output_histogram_entry> monero_output_histogram_entry::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_output_histogram_entry>(json);
}

rapidjson::Value monero_output_histogram_entry::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root(rapidjson::kObjectType);
Expand Down Expand Up @@ -1410,6 +1498,10 @@ namespace monero {
}
}

std::shared_ptr<monero_tx_pool_stats> monero_tx_pool_stats::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_tx_pool_stats>(json);
}

rapidjson::Value monero_tx_pool_stats::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root(rapidjson::kObjectType);
Expand Down Expand Up @@ -1455,6 +1547,10 @@ namespace monero {
}
}

std::shared_ptr<monero_daemon_update_check_result> monero_daemon_update_check_result::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_daemon_update_check_result>(json);
}

rapidjson::Value monero_daemon_update_check_result::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root(rapidjson::kObjectType);
Expand Down Expand Up @@ -1484,6 +1580,10 @@ namespace monero {
}
}

std::shared_ptr<monero_daemon_update_download_result> monero_daemon_update_download_result::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_daemon_update_download_result>(json);
}

rapidjson::Value monero_daemon_update_download_result::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root = monero_daemon_update_check_result::to_rapidjson_val(allocator);
Expand Down Expand Up @@ -1513,6 +1613,10 @@ namespace monero {
}
}

std::shared_ptr<monero_fee_estimate> monero_fee_estimate::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_fee_estimate>(json);
}

rapidjson::Value monero_fee_estimate::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root(rapidjson::kObjectType);
Expand Down Expand Up @@ -1579,6 +1683,10 @@ namespace monero {
}
}

std::shared_ptr<monero_daemon_info> monero_daemon_info::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_daemon_info>(json);
}

rapidjson::Value monero_daemon_info::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root = monero_rpc_payment_info::to_rapidjson_val(allocator);
Expand Down Expand Up @@ -1657,6 +1765,10 @@ namespace monero {
}
}

std::shared_ptr<monero_daemon_sync_info> monero_daemon_sync_info::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_daemon_sync_info>(json);
}

rapidjson::Value monero_daemon_sync_info::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root = monero_rpc_payment_info::to_rapidjson_val(allocator);
Expand Down Expand Up @@ -1694,6 +1806,10 @@ namespace monero {
}
}

std::shared_ptr<monero_daemon_network_stats> monero_daemon_network_stats::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_daemon_network_stats>(json);
}

rapidjson::Value monero_daemon_network_stats::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root = monero_rpc_payment_info::to_rapidjson_val(allocator);
Expand Down Expand Up @@ -1728,6 +1844,10 @@ namespace monero {
}
}

std::shared_ptr<monero_hard_fork_info> monero_hard_fork_info::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_hard_fork_info>(json);
}

rapidjson::Value monero_hard_fork_info::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root = monero_rpc_payment_info::to_rapidjson_val(allocator);
Expand Down Expand Up @@ -1761,6 +1881,10 @@ namespace monero {
}
}

std::shared_ptr<monero_generate_blocks_result> monero_generate_blocks_result::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_generate_blocks_result>(json);
}

rapidjson::Value monero_generate_blocks_result::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root(rapidjson::kObjectType);
Expand All @@ -1786,6 +1910,10 @@ namespace monero {
}
}

std::shared_ptr<monero_get_blocks_by_hash_result> monero_get_blocks_by_hash_result::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_get_blocks_by_hash_result>(json);
}

rapidjson::Value monero_get_blocks_by_hash_result::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root(rapidjson::kObjectType);
Expand Down Expand Up @@ -1814,6 +1942,10 @@ namespace monero {
}
}

std::shared_ptr<monero_get_block_hashes_result> monero_get_block_hashes_result::deserialize(const std::string& json) {
return gen_utils::deserialize<monero_get_block_hashes_result>(json);
}

rapidjson::Value monero_get_block_hashes_result::to_rapidjson_val(rapidjson::Document::AllocatorType& allocator) const {
// create root
rapidjson::Value root(rapidjson::kObjectType);
Expand Down
Loading
Loading