mirror of
https://github.com/Xahau/xahaud.git
synced 2025-12-06 17:27:52 +00:00
56 lines
1.1 KiB
C++
56 lines
1.1 KiB
C++
|
|
|
|
|
|
#ifndef RIPPLE_CLUSTERNODESTATUS_H
|
|
#define RIPPLE_CLUSTERNODESTATUS_H
|
|
|
|
class ClusterNodeStatus
|
|
{
|
|
public:
|
|
|
|
ClusterNodeStatus() : mLoadFee(0), mReportTime(0)
|
|
{ ; }
|
|
|
|
ClusterNodeStatus(std::string const& name) : mNodeName(name), mLoadFee(0), mReportTime(0)
|
|
{ ; }
|
|
|
|
ClusterNodeStatus(const std::string& name, uint32 fee, uint32 rtime) :
|
|
mNodeName(name),
|
|
mLoadFee(fee),
|
|
mReportTime(rtime)
|
|
{ ; }
|
|
|
|
std::string const& getName()
|
|
{
|
|
return mNodeName;
|
|
}
|
|
|
|
uint32 getLoadFee()
|
|
{
|
|
return mLoadFee;
|
|
}
|
|
|
|
uint32 getReportTime()
|
|
{
|
|
return mReportTime;
|
|
}
|
|
|
|
bool update(ClusterNodeStatus const& status)
|
|
{
|
|
if (status.mReportTime <= mReportTime)
|
|
return false;
|
|
mLoadFee = status.mLoadFee;
|
|
mReportTime = status.mReportTime;
|
|
if (mNodeName.empty() || !status.mNodeName.empty())
|
|
mNodeName = status.mNodeName;
|
|
return true;
|
|
}
|
|
|
|
private:
|
|
std::string mNodeName;
|
|
uint32 mLoadFee;
|
|
uint32 mReportTime;
|
|
};
|
|
|
|
#endif
|