public async Task <VisibleFieldType[][]> HandleAsync(GetVisibleGameTableRequest request, CancellationToken cancellationToken) { using (var session = _documentStore.OpenAsyncSession()) { // TODO: Validate user id var game = await session.LoadGameAsync(request.GameId, cancellationToken).ConfigureAwait(false); return(EnumArrayCloner.CloneAndMap(game.VisibleTable, FieldTypeConverter.ToContract)); } }
public async Task <IActionResult> GetGameTable(string gameId, CancellationToken cancellationToken) { var request = new GetVisibleGameTableRequest { GameId = gameId }; var result = await _getVisibleGameTableRequestHandler.HandleAsync(request, cancellationToken).ConfigureAwait(false); return(Ok(new GetGameTableResponse { VisibleTable = result })); }