Merge pull request #1302

63fe6fd wallet2_api: allow connection to return "yes, but wrong version" (moneromooo-monero)
This commit is contained in:
Riccardo Spagni 2016-11-08 22:53:13 +02:00
commit 7c7a6cf2f8
No known key found for this signature in database
GPG key ID: 55432DF31CCD4FCD
3 changed files with 16 additions and 4 deletions

View file

@ -760,9 +760,15 @@ bool WalletImpl::connectToDaemon()
return result;
}
bool WalletImpl::connected() const
Wallet::ConnectionStatus WalletImpl::connected() const
{
return m_wallet->check_connection();
bool same_version = false;
bool is_connected = m_wallet->check_connection(&same_version);
if (!is_connected)
return Wallet::ConnectionStatus_Disconnected;
if (!same_version)
return Wallet::ConnectionStatus_WrongVersion;
return Wallet::ConnectionStatus_Connected;
}
void WalletImpl::setTrustedDaemon(bool arg)

View file

@ -70,7 +70,7 @@ public:
bool init(const std::string &daemon_address, uint64_t upper_transaction_size_limit);
void initAsync(const std::string &daemon_address, uint64_t upper_transaction_size_limit);
bool connectToDaemon();
bool connected() const;
ConnectionStatus connected() const;
void setTrustedDaemon(bool arg);
bool trustedDaemon() const;
uint64_t balance() const;

View file

@ -160,6 +160,12 @@ struct Wallet
Status_Error
};
enum ConnectionStatus {
ConnectionStatus_Disconnected,
ConnectionStatus_Connected,
ConnectionStatus_WrongVersion
};
virtual ~Wallet() = 0;
virtual std::string seed() const = 0;
virtual std::string getSeedLanguage() const = 0;
@ -244,7 +250,7 @@ struct Wallet
* @brief connected - checks if the wallet connected to the daemon
* @return - true if connected
*/
virtual bool connected() const = 0;
virtual ConnectionStatus connected() const = 0;
virtual void setTrustedDaemon(bool arg) = 0;
virtual bool trustedDaemon() const = 0;
virtual uint64_t balance() const = 0;