mirror of
https://github.com/monero-project/monero.git
synced 2024-10-01 11:49:47 -04:00
wallet_rpc_server: dedup transfer RPC responses
This commit is contained in:
parent
94e67bf96b
commit
a6639df9e4
@ -530,6 +530,33 @@ namespace wallet_rpc
|
|||||||
END_KV_SERIALIZE_MAP()
|
END_KV_SERIALIZE_MAP()
|
||||||
};
|
};
|
||||||
|
|
||||||
|
struct single_transfer_response
|
||||||
|
{
|
||||||
|
std::string tx_hash;
|
||||||
|
std::string tx_key;
|
||||||
|
uint64_t amount;
|
||||||
|
uint64_t fee;
|
||||||
|
uint64_t weight;
|
||||||
|
std::string tx_blob;
|
||||||
|
std::string tx_metadata;
|
||||||
|
std::string multisig_txset;
|
||||||
|
std::string unsigned_txset;
|
||||||
|
key_image_list spent_key_images;
|
||||||
|
|
||||||
|
BEGIN_KV_SERIALIZE_MAP()
|
||||||
|
KV_SERIALIZE(tx_hash)
|
||||||
|
KV_SERIALIZE(tx_key)
|
||||||
|
KV_SERIALIZE(amount)
|
||||||
|
KV_SERIALIZE(fee)
|
||||||
|
KV_SERIALIZE(weight)
|
||||||
|
KV_SERIALIZE(tx_blob)
|
||||||
|
KV_SERIALIZE(tx_metadata)
|
||||||
|
KV_SERIALIZE(multisig_txset)
|
||||||
|
KV_SERIALIZE(unsigned_txset)
|
||||||
|
KV_SERIALIZE(spent_key_images)
|
||||||
|
END_KV_SERIALIZE_MAP()
|
||||||
|
};
|
||||||
|
|
||||||
struct COMMAND_RPC_TRANSFER
|
struct COMMAND_RPC_TRANSFER
|
||||||
{
|
{
|
||||||
struct request_t
|
struct request_t
|
||||||
@ -562,34 +589,36 @@ namespace wallet_rpc
|
|||||||
};
|
};
|
||||||
typedef epee::misc_utils::struct_init<request_t> request;
|
typedef epee::misc_utils::struct_init<request_t> request;
|
||||||
|
|
||||||
struct response_t
|
typedef single_transfer_response response_t;
|
||||||
|
typedef epee::misc_utils::struct_init<response_t> response;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct split_transfer_response
|
||||||
{
|
{
|
||||||
std::string tx_hash;
|
std::list<std::string> tx_hash_list;
|
||||||
std::string tx_key;
|
std::list<std::string> tx_key_list;
|
||||||
uint64_t amount;
|
std::list<uint64_t> amount_list;
|
||||||
uint64_t fee;
|
std::list<uint64_t> fee_list;
|
||||||
uint64_t weight;
|
std::list<uint64_t> weight_list;
|
||||||
std::string tx_blob;
|
std::list<std::string> tx_blob_list;
|
||||||
std::string tx_metadata;
|
std::list<std::string> tx_metadata_list;
|
||||||
std::string multisig_txset;
|
std::string multisig_txset;
|
||||||
std::string unsigned_txset;
|
std::string unsigned_txset;
|
||||||
key_image_list spent_key_images;
|
std::list<key_image_list> spent_key_images_list;
|
||||||
|
|
||||||
BEGIN_KV_SERIALIZE_MAP()
|
BEGIN_KV_SERIALIZE_MAP()
|
||||||
KV_SERIALIZE(tx_hash)
|
KV_SERIALIZE(tx_hash_list)
|
||||||
KV_SERIALIZE(tx_key)
|
KV_SERIALIZE(tx_key_list)
|
||||||
KV_SERIALIZE(amount)
|
KV_SERIALIZE(amount_list)
|
||||||
KV_SERIALIZE(fee)
|
KV_SERIALIZE(fee_list)
|
||||||
KV_SERIALIZE(weight)
|
KV_SERIALIZE(weight_list)
|
||||||
KV_SERIALIZE(tx_blob)
|
KV_SERIALIZE(tx_blob_list)
|
||||||
KV_SERIALIZE(tx_metadata)
|
KV_SERIALIZE(tx_metadata_list)
|
||||||
KV_SERIALIZE(multisig_txset)
|
KV_SERIALIZE(multisig_txset)
|
||||||
KV_SERIALIZE(unsigned_txset)
|
KV_SERIALIZE(unsigned_txset)
|
||||||
KV_SERIALIZE(spent_key_images)
|
KV_SERIALIZE(spent_key_images_list)
|
||||||
END_KV_SERIALIZE_MAP()
|
END_KV_SERIALIZE_MAP()
|
||||||
};
|
};
|
||||||
typedef epee::misc_utils::struct_init<response_t> response;
|
|
||||||
};
|
|
||||||
|
|
||||||
struct COMMAND_RPC_TRANSFER_SPLIT
|
struct COMMAND_RPC_TRANSFER_SPLIT
|
||||||
{
|
{
|
||||||
@ -623,41 +652,7 @@ namespace wallet_rpc
|
|||||||
};
|
};
|
||||||
typedef epee::misc_utils::struct_init<request_t> request;
|
typedef epee::misc_utils::struct_init<request_t> request;
|
||||||
|
|
||||||
struct key_list
|
typedef split_transfer_response response_t;
|
||||||
{
|
|
||||||
std::list<std::string> keys;
|
|
||||||
|
|
||||||
BEGIN_KV_SERIALIZE_MAP()
|
|
||||||
KV_SERIALIZE(keys)
|
|
||||||
END_KV_SERIALIZE_MAP()
|
|
||||||
};
|
|
||||||
|
|
||||||
struct response_t
|
|
||||||
{
|
|
||||||
std::list<std::string> tx_hash_list;
|
|
||||||
std::list<std::string> tx_key_list;
|
|
||||||
std::list<uint64_t> amount_list;
|
|
||||||
std::list<uint64_t> fee_list;
|
|
||||||
std::list<uint64_t> weight_list;
|
|
||||||
std::list<std::string> tx_blob_list;
|
|
||||||
std::list<std::string> tx_metadata_list;
|
|
||||||
std::string multisig_txset;
|
|
||||||
std::string unsigned_txset;
|
|
||||||
std::list<key_image_list> spent_key_images_list;
|
|
||||||
|
|
||||||
BEGIN_KV_SERIALIZE_MAP()
|
|
||||||
KV_SERIALIZE(tx_hash_list)
|
|
||||||
KV_SERIALIZE(tx_key_list)
|
|
||||||
KV_SERIALIZE(amount_list)
|
|
||||||
KV_SERIALIZE(fee_list)
|
|
||||||
KV_SERIALIZE(weight_list)
|
|
||||||
KV_SERIALIZE(tx_blob_list)
|
|
||||||
KV_SERIALIZE(tx_metadata_list)
|
|
||||||
KV_SERIALIZE(multisig_txset)
|
|
||||||
KV_SERIALIZE(unsigned_txset)
|
|
||||||
KV_SERIALIZE(spent_key_images_list)
|
|
||||||
END_KV_SERIALIZE_MAP()
|
|
||||||
};
|
|
||||||
typedef epee::misc_utils::struct_init<response_t> response;
|
typedef epee::misc_utils::struct_init<response_t> response;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -821,41 +816,7 @@ namespace wallet_rpc
|
|||||||
};
|
};
|
||||||
typedef epee::misc_utils::struct_init<request_t> request;
|
typedef epee::misc_utils::struct_init<request_t> request;
|
||||||
|
|
||||||
struct key_list
|
typedef split_transfer_response response_t;
|
||||||
{
|
|
||||||
std::list<std::string> keys;
|
|
||||||
|
|
||||||
BEGIN_KV_SERIALIZE_MAP()
|
|
||||||
KV_SERIALIZE(keys)
|
|
||||||
END_KV_SERIALIZE_MAP()
|
|
||||||
};
|
|
||||||
|
|
||||||
struct response_t
|
|
||||||
{
|
|
||||||
std::list<std::string> tx_hash_list;
|
|
||||||
std::list<std::string> tx_key_list;
|
|
||||||
std::list<uint64_t> amount_list;
|
|
||||||
std::list<uint64_t> fee_list;
|
|
||||||
std::list<uint64_t> weight_list;
|
|
||||||
std::list<std::string> tx_blob_list;
|
|
||||||
std::list<std::string> tx_metadata_list;
|
|
||||||
std::string multisig_txset;
|
|
||||||
std::string unsigned_txset;
|
|
||||||
std::list<key_image_list> spent_key_images_list;
|
|
||||||
|
|
||||||
BEGIN_KV_SERIALIZE_MAP()
|
|
||||||
KV_SERIALIZE(tx_hash_list)
|
|
||||||
KV_SERIALIZE(tx_key_list)
|
|
||||||
KV_SERIALIZE(amount_list)
|
|
||||||
KV_SERIALIZE(fee_list)
|
|
||||||
KV_SERIALIZE(weight_list)
|
|
||||||
KV_SERIALIZE(tx_blob_list)
|
|
||||||
KV_SERIALIZE(tx_metadata_list)
|
|
||||||
KV_SERIALIZE(multisig_txset)
|
|
||||||
KV_SERIALIZE(unsigned_txset)
|
|
||||||
KV_SERIALIZE(spent_key_images_list)
|
|
||||||
END_KV_SERIALIZE_MAP()
|
|
||||||
};
|
|
||||||
typedef epee::misc_utils::struct_init<response_t> response;
|
typedef epee::misc_utils::struct_init<response_t> response;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -897,41 +858,7 @@ namespace wallet_rpc
|
|||||||
};
|
};
|
||||||
typedef epee::misc_utils::struct_init<request_t> request;
|
typedef epee::misc_utils::struct_init<request_t> request;
|
||||||
|
|
||||||
struct key_list
|
typedef split_transfer_response response_t;
|
||||||
{
|
|
||||||
std::list<std::string> keys;
|
|
||||||
|
|
||||||
BEGIN_KV_SERIALIZE_MAP()
|
|
||||||
KV_SERIALIZE(keys)
|
|
||||||
END_KV_SERIALIZE_MAP()
|
|
||||||
};
|
|
||||||
|
|
||||||
struct response_t
|
|
||||||
{
|
|
||||||
std::list<std::string> tx_hash_list;
|
|
||||||
std::list<std::string> tx_key_list;
|
|
||||||
std::list<uint64_t> amount_list;
|
|
||||||
std::list<uint64_t> fee_list;
|
|
||||||
std::list<uint64_t> weight_list;
|
|
||||||
std::list<std::string> tx_blob_list;
|
|
||||||
std::list<std::string> tx_metadata_list;
|
|
||||||
std::string multisig_txset;
|
|
||||||
std::string unsigned_txset;
|
|
||||||
std::list<key_image_list> spent_key_images_list;
|
|
||||||
|
|
||||||
BEGIN_KV_SERIALIZE_MAP()
|
|
||||||
KV_SERIALIZE(tx_hash_list)
|
|
||||||
KV_SERIALIZE(tx_key_list)
|
|
||||||
KV_SERIALIZE(amount_list)
|
|
||||||
KV_SERIALIZE(fee_list)
|
|
||||||
KV_SERIALIZE(weight_list)
|
|
||||||
KV_SERIALIZE(tx_blob_list)
|
|
||||||
KV_SERIALIZE(tx_metadata_list)
|
|
||||||
KV_SERIALIZE(multisig_txset)
|
|
||||||
KV_SERIALIZE(unsigned_txset)
|
|
||||||
KV_SERIALIZE(spent_key_images_list)
|
|
||||||
END_KV_SERIALIZE_MAP()
|
|
||||||
};
|
|
||||||
typedef epee::misc_utils::struct_init<response_t> response;
|
typedef epee::misc_utils::struct_init<response_t> response;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -967,32 +894,7 @@ namespace wallet_rpc
|
|||||||
};
|
};
|
||||||
typedef epee::misc_utils::struct_init<request_t> request;
|
typedef epee::misc_utils::struct_init<request_t> request;
|
||||||
|
|
||||||
struct response_t
|
typedef single_transfer_response response_t;
|
||||||
{
|
|
||||||
std::string tx_hash;
|
|
||||||
std::string tx_key;
|
|
||||||
uint64_t amount;
|
|
||||||
uint64_t fee;
|
|
||||||
uint64_t weight;
|
|
||||||
std::string tx_blob;
|
|
||||||
std::string tx_metadata;
|
|
||||||
std::string multisig_txset;
|
|
||||||
std::string unsigned_txset;
|
|
||||||
key_image_list spent_key_images;
|
|
||||||
|
|
||||||
BEGIN_KV_SERIALIZE_MAP()
|
|
||||||
KV_SERIALIZE(tx_hash)
|
|
||||||
KV_SERIALIZE(tx_key)
|
|
||||||
KV_SERIALIZE(amount)
|
|
||||||
KV_SERIALIZE(fee)
|
|
||||||
KV_SERIALIZE(weight)
|
|
||||||
KV_SERIALIZE(tx_blob)
|
|
||||||
KV_SERIALIZE(tx_metadata)
|
|
||||||
KV_SERIALIZE(multisig_txset)
|
|
||||||
KV_SERIALIZE(unsigned_txset)
|
|
||||||
KV_SERIALIZE(spent_key_images)
|
|
||||||
END_KV_SERIALIZE_MAP()
|
|
||||||
};
|
|
||||||
typedef epee::misc_utils::struct_init<response_t> response;
|
typedef epee::misc_utils::struct_init<response_t> response;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user