diff options
author | Jaquee <jaquee.monero@gmail.com> | 2017-08-18 14:27:54 +0200 |
---|---|---|
committer | Jaquee <jaquee.monero@gmail.com> | 2017-08-21 08:11:12 +0200 |
commit | d27fe32e4ad1b4908e0b9d00466366c56eb27c5b (patch) | |
tree | 1867f9c4160586da71465dea71d690b57655c1f0 /src/wallet/wallet2.cpp | |
parent | import_key_images - allow importing without being connected to daemon (diff) | |
download | monero-d27fe32e4ad1b4908e0b9d00466366c56eb27c5b.tar.xz |
wallet2: export/import wallet data functions
Diffstat (limited to '')
-rw-r--r-- | src/wallet/wallet2.cpp | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/src/wallet/wallet2.cpp b/src/wallet/wallet2.cpp index bde439cfe..3ddc2c634 100644 --- a/src/wallet/wallet2.cpp +++ b/src/wallet/wallet2.cpp @@ -5406,6 +5406,55 @@ uint64_t wallet2::import_key_images(const std::vector<std::pair<crypto::key_imag MDEBUG("Total: " << print_money(spent) << " spent, " << print_money(unspent) << " unspent"); return m_transfers[signed_key_images.size() - 1].m_block_height; } +wallet2::payment_container wallet2::export_payments() const +{ + payment_container payments; + for (auto const &p : m_payments) + { + payments.emplace(p); + } + return payments; +} +void wallet2::import_payments(const payment_container &payments) +{ + m_payments.clear(); + for (auto const &p : payments) + { + m_payments.emplace(p); + } +} +void wallet2::import_payments_out(const std::list<std::pair<crypto::hash,wallet2::confirmed_transfer_details>> &confirmed_payments) +{ + m_confirmed_txs.clear(); + for (auto const &p : confirmed_payments) + { + m_confirmed_txs.emplace(p); + } +} + +std::vector<crypto::hash> wallet2::export_blockchain() const +{ + std::vector<crypto::hash> bc; + for (auto const &b : m_blockchain) + { + bc.push_back(b); + } + return bc; +} + +void wallet2::import_blockchain(const std::vector<crypto::hash> &bc) +{ + m_blockchain.clear(); + for (auto const &b : bc) + { + m_blockchain.push_back(b); + } + cryptonote::block genesis; + generate_genesis(genesis); + crypto::hash genesis_hash = get_block_hash(genesis); + check_genesis(genesis_hash); + m_local_bc_height = m_blockchain.size(); +} //---------------------------------------------------------------------------------------------------- std::vector<tools::wallet2::transfer_details> wallet2::export_outputs() const { |