Ejemplo n.º 1
0
        AckImpl CreateAckFunction(TaskCompletionSource <DescribePlayerSessionsOutcome> future)
        {
            return(new AckImpl((ack, response) =>
            {
                log.DebugFormat("Got ack {0} with response {1}", ack, response);

                if (null == ack)
                {
                    future.TrySetResult(new DescribePlayerSessionsOutcome(new GameLiftError(GameLiftErrorType.SERVICE_CALL_FAILED)));
                    return;
                }

                var success = (bool)ack;

                if (success)
                {
                    var deserialized = Com.Amazon.Whitewater.Auxproxy.Pbuffer.DescribePlayerSessionsResponse.Parser.ParseJson(response as string);
                    var translation = DescribePlayerSessionsResult.ParseFromBufferedDescribePlayerSessionsResponse(deserialized);
                    future.TrySetResult(new DescribePlayerSessionsOutcome(translation));
                }
                else
                {
                    SetFutureErrorResult(future, response);
                }
            }));
        }
        public async Task <DescribePlayerSessionsOutcome> DescribePlayerSessions(Model.DescribePlayerSessionsRequest request)
        {
            var body     = DescribePlayerSessionsRequestMapper.ParseFromDescribePlayerSessionsRequest(request);
            var response = await SendAsync(body).ConfigureAwait(false);

            if (response.IsSuccessStatusCode)
            {
                var deserialized = DescribePlayerSessionsResponse.Parser.ParseJson(await response.Content.ReadAsStringAsync().ConfigureAwait(false));
                var translation  = DescribePlayerSessionsResult.ParseFromBufferedDescribePlayerSessionsResponse(deserialized);
                return(new DescribePlayerSessionsOutcome(translation));
            }

            return(new DescribePlayerSessionsOutcome(new GameLiftError(GameLiftErrorType.BAD_REQUEST_EXCEPTION)));
        }
 public DescribePlayerSessionsOutcome(GameLiftError error, DescribePlayerSessionsResult result) : base(error)
 {
     Result = result;
 }
 public DescribePlayerSessionsOutcome(DescribePlayerSessionsResult result)
 {
     Result = result;
 }