public RequesterViewModel(DetailedRequesterPOCO dr) { this.Account = dr.Account; this.State = dr.State; this.AvgBlockReward = dr.AvgBlockReward; this.NeededWorkers = dr.NeededWorkers; this.Working = dr.Working; this.InProduction = dr.InProduction; }
private async Task FetchSidechainConfiguration(DetailedRequesterPOCO req) { var jsonString = await Fetch.GetAsync(req.IP + Resources.SidechainConfiguration + req.Account); var response = JsonStringNavigator.GetDeeper(jsonString, "response"); req.CreatedAt = JsonStringNavigator.GetDeeper(response, "candidature-phase-end-date"); CalculateAverageBlock(response, req); }
private void CalculateAverageBlock(string response, DetailedRequesterPOCO req) { double fullMax, fullMin, historyMax, historyMin, validatorMax, validatorMin; fullMax = Double.Parse(JsonStringNavigator.GetDeeper(response, "max_payment_per_block_full_producers")); fullMin = Double.Parse(JsonStringNavigator.GetDeeper(response, "min_payment_per_block_full_producers")); historyMax = Double.Parse(JsonStringNavigator.GetDeeper(response, "max_payment_per_block_history_producers")); historyMin = Double.Parse(JsonStringNavigator.GetDeeper(response, "min_payment_per_block_history_producers")); validatorMax = Double.Parse(JsonStringNavigator.GetDeeper(response, "max_payment_per_block_validator_producers")); validatorMin = Double.Parse(JsonStringNavigator.GetDeeper(response, "min_payment_per_block_validator_producers")); req.AvgBlockReward = Average(Average(fullMax, fullMin), Average(historyMax, historyMin), Average(validatorMax, validatorMin)); }
private async Task <bool> FetchSidechainState(DetailedRequesterPOCO req) { var jsonString = await Fetch.GetAsync(req.IP + Resources.SidechainState + req.Account); var succeeded = bool.Parse(JsonStringNavigator.GetDeeper(jsonString, "succeeded")); if (!succeeded) { req.State = "No sidechain"; return(false); } var response = JsonStringNavigator.GetDeeper(jsonString, "response"); var scState = JsonStringNavigator.GetValue <SidechainState>(response); req.InProduction = scState.inProduction; req.State = scState.state; req.NeededWorkers = scState.historyProducersInfo.numberOfProducersRequired + scState.fullProducersInfo.numberOfProducersRequired + scState.validatorProducersInfo.numberOfProducersRequired; req.Working = scState.historyProducersInfo.numberOfProducersInChain + scState.fullProducersInfo.numberOfProducersInChain + scState.validatorProducersInfo.numberOfProducersInChain; return(true); }
public async Task FetchDetailedValues(DetailedRequesterPOCO req) { await FetchSidechainState(req); await FetchSidechainConfiguration(req); }