This commit is contained in:
2022-11-09 08:56:54 -06:00
parent 2241ab23fe
commit 3257b420e9
17 changed files with 601 additions and 538 deletions

View File

@@ -19,17 +19,20 @@ public class SessionController : ControllerBase
private readonly IModelMapper mapper;
private readonly ISessionRepository sessionRepository;
private readonly IQueryRespository queryRespository;
private readonly ILogger<SessionController> logger;
public SessionController(
ISocketConnectionManager communicationManager,
IModelMapper mapper,
ISessionRepository sessionRepository,
IQueryRespository queryRespository)
IQueryRespository queryRespository,
ILogger<SessionController> logger)
{
this.communicationManager = communicationManager;
this.mapper = mapper;
this.sessionRepository = sessionRepository;
this.queryRespository = queryRespository;
this.logger = logger;
}
[HttpPost]
@@ -37,13 +40,17 @@ public class SessionController : ControllerBase
{
var userId = User.GetShogiUserId();
if (string.IsNullOrWhiteSpace(userId)) return this.Unauthorized();
var session = new Domain.ShogiBoard(request.Name, Domain.BoardState.StandardStarting, userId);
var session = new Domain.Aggregates.Session(
request.Name,
userId,
new Domain.ValueObjects.ShogiBoard(Domain.BoardState.StandardStarting));
try
{
await sessionRepository.CreateSession(session);
await sessionRepository.CreateShogiBoard(board, request.Name, userId);
}
catch (SqlException)
catch (SqlException e)
{
logger.LogError(exception: e, message: "Uh oh");
return this.Conflict();
}