Пример #1
0
        public async Task <VoidRsp> SaveAsync(AccountReq request, int timeOut = 3000)
        {
            AmpMessage message = AmpMessage.CreateRequestMessage(1001, 3);

            message.Data = request.ToByteArray();
            var response = await base.CallInvoker.AsyncCall(message, timeOut);

            if (response == null)
            {
                throw new RpcException("error,response is null !");
            }
            if (response.Data == null)
            {
                return(new VoidRsp());
            }
            return(VoidRsp.Parser.ParseFrom(response.Data));
        }
Пример #2
0
//同步方法
        public VoidRsp Save(AccountReq request)
        {
            AmpMessage message = AmpMessage.CreateRequestMessage(1001, 3);

            message.Data = request.ToByteArray();
            var response = base.CallInvoker.BlockingCall(message);

            if (response == null)
            {
                throw new RpcException("error,response is null !");
            }
            if (response.Data == null)
            {
                return(new VoidRsp());
            }
            return(VoidRsp.Parser.ParseFrom(response.Data));
        }
Пример #3
0
//调用委托
        private async Task <AmpMessage> ProcessUpdateStatisticsAsync(AmpMessage req)
        {
            AccountReq request = null;

            if (req.Data == null)
            {
                request = new AccountReq();
            }
            else
            {
                request = AccountReq.Parser.ParseFrom(req.Data);
            }
            var data = await UpdateStatisticsAsync(request);

            var response = AmpMessage.CreateResponseMessage(req.ServiceId, req.MessageId);

            response.Sequence = req.Sequence;
            response.Data     = data.ToByteArray();
            return(response);
        }
Пример #4
0
//抽象方法
        public abstract Task <VoidRsp> UpdateStatisticsAsync(AccountReq request);
Пример #5
0
//抽象方法
        public abstract Task <VoidRsp> SaveAsync(AccountReq request);