Skip to content

Commit

Permalink
Better "masternode status" for deterministic masternodes
Browse files Browse the repository at this point in the history
  • Loading branch information
codablock committed Sep 3, 2018
1 parent 50ac6fb commit e2a9dbb
Showing 1 changed file with 19 additions and 5 deletions.
24 changes: 19 additions & 5 deletions src/rpc/masternode.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -626,15 +626,29 @@ UniValue masternode_status(const JSONRPCRequest& request)

UniValue mnObj(UniValue::VOBJ);

// keep compatibility with legacy status for now (might get deprecated/removed later)
mnObj.push_back(Pair("outpoint", activeMasternodeInfo.outpoint.ToStringShort()));
mnObj.push_back(Pair("service", activeMasternodeInfo.service.ToString()));

CMasternode mn;
if(mnodeman.Get(activeMasternodeInfo.outpoint, mn)) {
mnObj.push_back(Pair("payee", CBitcoinAddress(mn.keyIDCollateralAddress).ToString()));
}
if (deterministicMNManager->IsDeterministicMNsSporkActive()) {
auto dmn = activeMasternodeManager->GetDMN();
if (dmn) {
mnObj.push_back(Pair("proTxHash", dmn->proTxHash.ToString()));
mnObj.push_back(Pair("collateralIndex", (int)dmn->nCollateralIndex));
UniValue stateObj;
dmn->pdmnState->ToJson(stateObj);
mnObj.push_back(Pair("dmnState", stateObj));
}
mnObj.push_back(Pair("state", activeMasternodeManager->GetStateString()));
mnObj.push_back(Pair("status", activeMasternodeManager->GetStatus()));
} else {
CMasternode mn;
if(mnodeman.Get(activeMasternodeInfo.outpoint, mn)) {
mnObj.push_back(Pair("payee", CBitcoinAddress(mn.keyIDCollateralAddress).ToString()));
}

mnObj.push_back(Pair("status", legacyActiveMasternodeManager.GetStatus()));
mnObj.push_back(Pair("status", legacyActiveMasternodeManager.GetStatus()));
}
return mnObj;
}

Expand Down

0 comments on commit e2a9dbb

Please sign in to comment.