1
0
This repository has been archived on 2025-07-27. You can view files and clone it, but cannot push or open issues or pull requests.
Files
siadrive/SiaDrive.Api/SiaConsensus.cpp
2017-02-19 14:28:58 -06:00

36 lines
817 B
C++

#include "stdafx.h"
#include "SiaApi.h"
using namespace Sia::Api;
CSiaApi::_CSiaConsensus::_CSiaConsensus(const CSiaCurl& siaCurl, CSiaDriveConfig* siaDriveConfig) :
CSiaBase(siaCurl, siaDriveConfig),
CAutoThread(siaCurl, siaDriveConfig),
_Height(0),
_Synced(false),
_CurrentBlock(L"")
{
StartAutoThread();
}
CSiaApi::_CSiaConsensus::~_CSiaConsensus()
{
StopAutoThread();
}
void CSiaApi::_CSiaConsensus::AutoThreadCallback(const CSiaCurl& siaCurl, CSiaDriveConfig* siaDriveConfig)
{
json result;
if (ApiSuccess(siaCurl.Get(L"/consensus", result)))
{
SetHeight(result["height"].get<std::uint64_t>());
SetSynced(result["synced"].get<bool>());
SetCurrentBlock(CA2W(result["currentblock"].get<std::string>().c_str()).m_psz);
}
else
{
SetHeight(0);
SetSynced(false);
SetCurrentBlock(L"");
}
}