public async Task <ProcessWorldResponse> Get([FromBody] ProcessWorldRequest request) { try { var mapped = ToClientSideMapper.Map(request); var result = await CaravanServer.ProcessWorldAsync(mapped); var response = ToDtoMapper.Map(result); return(response); } catch (ProcessRequestException e) { var result = new ProcessWorldResponse { Status = new ResponseStatus { Code = (int)e.Code, ErrorMessage = e.Message } }; _logger.LogError(e, $"Error ProcessRequestException {GetType().Name} with request='{request.ToLog()}', response='{result.ToLog()}'"); return(result); } catch (Exception e) { var result = new ProcessWorldResponse { Status = new ResponseStatus { Code = (int)ResponseStatusEnum.InernalError, ErrorMessage = e.Message } }; _logger.LogError(e, $"Error InternalServerError {GetType().Name} with request='{request.ToLog()}', response='{result.ToLog()}'"); return(result); } }
public static IProcessWorldRequest Map(ProcessWorldRequest c) { var result = new ProcessWorldRequestClientSideEntity(); result.WorldGuid = c.WorldGuid; result.Player = Map(c.Player); result.ClientCommands = Map(c.ClientCommands); result.LastServerCommandProcessed = c.LastServerCommandProcessed; return(result); }