ChessServer.Commands.CommandSurrender.DoWork C# (CSharp) Method

DoWork() public method

public DoWork ( string request ) : Response
request string
return Protocol.Response
        public override Response DoWork(string request)
        {
            var workRequest = JsonConvert.DeserializeObject<SurrenderRequest>(request);
            var workResponse = new SurrenderResponse();
            if (Server.Games[workRequest.GameID].Act == Act.WaitingOpponent)
            {
                workResponse.Status = Statuses.NoUser;
                return workResponse;
            }
            if (workRequest.From == Server.Games[workRequest.GameID].PlayerWhite.Name)
            {
                Server.Messages.GetOrAdd(Server.Games[workRequest.GameID].PlayerBlack.Name, i => new List<Message>()).Add(MessageSender.OpponentSurrendered());
                workResponse.Status = Statuses.Ok;
            }
            if (workRequest.From == Server.Games[workRequest.GameID].PlayerBlack.Name)
            {
                Server.Messages.GetOrAdd(Server.Games[workRequest.GameID].PlayerWhite.Name, i => new List<Message>()).Add(MessageSender.OpponentSurrendered());
                workResponse.Status = Statuses.Ok;
            }
            return workResponse;
        }
CommandSurrender