示例#1
0
        public void UpdatePollSelection(long pollId, ElectionCommitteePayload payload)
        {
            if (payload is null)
            {
                throw new ArgumentNullException(nameof(payload));
            }

            var voteCastTask = _castedVotes[pollId].GetOrAdd(payload.EcCommitment, new TaskCompletionSource <bool>());

            voteCastTask.SetResult(true);

            _dataAccessService.UpdatePollSelection(pollId, payload.EcCommitment.ToString(), payload.PartialBf.ToHexString());
        }
示例#2
0
 public async Task <ActionResult <VoteCastedResult> > CastVote(long pollId, [FromBody] ElectionCommitteePayload proofs)
 {
     return(Ok(new VoteCastedResult {
         Result = await _electionCommitteeService.WaitForVoteCast(pollId, proofs.EcCommitment).ConfigureAwait(false)
     }));
 }