Ejemplo n.º 1
0
        public Task <GasEstimateResponse> PostWithdrawRewardsSimulationAsync(string delegatorAddress, string validatorAddress, WithdrawRewardsRequest request, CancellationToken cancellationToken = default)
        {
            var baseReq = new BaseReqWithSimulate(request.BaseReq, true);

            return(_clientGetter()
                   .Request("distribution", "delegators", delegatorAddress, "rewards", validatorAddress)
                   .PostJsonAsync(new WithdrawRewardsRequest(baseReq), cancellationToken)
                   .ReceiveJson <GasEstimateResponse>()
                   .WrapExceptions());
        }
Ejemplo n.º 2
0
        public Task <StdTx> PostWithdrawRewardsAsync(string delegatorAddress, WithdrawRewardsRequest request, CancellationToken cancellationToken = default)
        {
            var baseReq = new BaseReqWithSimulate(request.BaseReq, false);

            return(_clientGetter()
                   .Request("distribution", "delegators", delegatorAddress, "rewards")
                   .PostJsonAsync(new WithdrawRewardsRequest(baseReq), cancellationToken)
                   .ReceiveJson <StdTx>()
                   .WrapExceptions());
        }
Ejemplo n.º 3
0
        public Task <StdTx> PostUnjailAsync(string validatorAddress, UnjailRequest request, CancellationToken cancellationToken = default)
        {
            var baseReq = new BaseReqWithSimulate(request.BaseReq, false);

            request = new UnjailRequest(baseReq);
            return(_clientGetter()
                   .Request("slashing", "validators", validatorAddress, "unjail")
                   .PostJsonAsync(request, cancellationToken)
                   .ReceiveJson <StdTx>()
                   .WrapExceptions());
        }
Ejemplo n.º 4
0
        public async Task <StdTx> PostBuyNameAsync(BuyNameReq request, CancellationToken cancellationToken = default)
        {
            var baseReq = new BaseReqWithSimulate(request.BaseReq, false);

            request = new BuyNameReq(baseReq, request.Name, request.Amount, request.Buyer);
            var content  = _cosmosApiClient.Serializer.SerializeJsonHttpContent(request);
            var response = (await _cosmosApiClient.HttpClient.PostAsync("nameservice/names", content, cancellationToken))
                           .EnsureSuccessStatusCode();

            return(await _cosmosApiClient.Serializer.DeserializeJson <StdTx>(response.Content));
        }
Ejemplo n.º 5
0
        public Task <StdTx> PostDelegationsAsync(DelegateRequest request, CancellationToken cancellationToken = default)
        {
            var baseRequest = new BaseReqWithSimulate(request.BaseReq, false);

            request = new DelegateRequest(baseRequest, request.DelegatorAddress, request.ValidatorAddress, request.Amount);
            return(_clientGetter()
                   .Request("staking", "delegators", request.DelegatorAddress, "delegations")
                   .PostJsonAsync(request, cancellationToken)
                   .ReceiveJson <StdTx>()
                   .WrapExceptions());
        }
Ejemplo n.º 6
0
        public Task <GasEstimateResponse> PostUnbondingDelegationSimulationAsync(UndelegateRequest request, CancellationToken cancellationToken = default)
        {
            var baseReq = new BaseReqWithSimulate(request.BaseReq, true);

            request = new UndelegateRequest(baseReq, request.DelegatorAddress, request.ValidatorAddress, request.Amount);
            return(_clientGetter()
                   .Request("staking", "delegators", request.DelegatorAddress, "unbonding_delegations")
                   .PostJsonAsync(request, cancellationToken)
                   .ReceiveJson <GasEstimateResponse>()
                   .WrapExceptions());
        }
Ejemplo n.º 7
0
        public Task <GasEstimateResponse> PostProposalSimulationAsync(PostProposalReq request, CancellationToken cancellationToken = default)
        {
            var baseReq = new BaseReqWithSimulate(request.BaseReq, true);

            request = new PostProposalReq(baseReq, request.Title, request.Description, request.ProposalType, request.Proposer, request.InitialDeposit);
            return(_clientGetter()
                   .Request("gov", "proposals")
                   .PostJsonAsync(request, cancellationToken)
                   .ReceiveJson <GasEstimateResponse>()
                   .WrapExceptions());
        }
Ejemplo n.º 8
0
        public Task <StdTx> PostWithdrawAddressAsync(string delegatorAddress, SetWithdrawalAddrRequest request, CancellationToken cancellationToken = default)
        {
            var baseReq = new BaseReqWithSimulate(request.BaseReq, false);

            request = new SetWithdrawalAddrRequest(baseReq, request.WithdrawAddress);

            return(_clientGetter()
                   .Request("distribution", "delegators", delegatorAddress, "withdraw_address")
                   .PostJsonAsync(request, cancellationToken)
                   .ReceiveJson <StdTx>()
                   .WrapExceptions());
        }
Ejemplo n.º 9
0
        public Task <StdTx> PostVoteAsync(ulong proposalId, VoteReq request, CancellationToken cancellationToken = default)
        {
            var baseReq = new BaseReqWithSimulate(request.BaseReq, false);

            request = new VoteReq(baseReq, request.Voter, request.Option);

            return(_clientGetter()
                   .Request("gov", "proposals", proposalId, "votes")
                   .PostJsonAsync(request, cancellationToken)
                   .ReceiveJson <StdTx>()
                   .WrapExceptions());
        }
Ejemplo n.º 10
0
        public Task <StdTx> PostDepositAsync(ulong proposalId, DepositReq request, CancellationToken cancellationToken = default)
        {
            var baseReq = new BaseReqWithSimulate(request.BaseReq, false);

            request = new DepositReq(baseReq, request.Depositor, request.Amount);

            return(_clientGetter()
                   .Request("gov", "proposals", proposalId, "deposits")
                   .PostJsonAsync(request, cancellationToken)
                   .ReceiveJson <StdTx>()
                   .WrapExceptions());
        }