コード例 #1
0
        public override async Task <ViewBlockedPlayersResponse> ViewBlockedPlayers(ViewBlockedPlayersRequest request, ServerCallContext context)
        {
            DbUserModel dbUserModel = context.UserState["user"] as DbUserModel;

            if (dbUserModel == null)
            {
                return new ViewBlockedPlayersResponse()
                       {
                           Status = ResponseFactory.createResponse(ResponseType.UNAUTHORIZED)
                       }
            }
            ;

            ViewBlockedPlayersResponse response = new ViewBlockedPlayersResponse();

            var blockedUsers = await Task.WhenAll(
                (await dbUserModel.GetBlockedUsers())
                .Select(
                    async it => (
                        await DbUserModel.GetUserFromGuid(it.FriendId)
                        ).AsUser()
                    )
                );


            response.BlockedUsers.AddRange(blockedUsers);
            response.Status = ResponseFactory.createResponse(ResponseType.SUCCESS);
            return(response);
        }
コード例 #2
0
        public override async Task <ViewBlockedPlayersResponse> ViewBlockedPlayers(ViewBlockedPlayersRequest request, ServerCallContext context)
        {
            RedisUserModel user = context.UserState["user"] as RedisUserModel;

            if (user == null)
            {
                return new ViewBlockedPlayersResponse()
                       {
                           Status = ResponseFactory.createResponse(ResponseType.UNAUTHORIZED)
                       }
            }
            ;

            ViewBlockedPlayersResponse response = new ViewBlockedPlayersResponse();

            response.BlockedUsers.AddRange((await user.GetBlockedUsers()).ConvertAll(it => it.asUser()));
            response.Status = ResponseFactory.createResponse(ResponseType.SUCCESS);
            return(response);
        }