namespace Gameboard.ShogiUI.Sockets.Repositories.CouchModels { public class Session : CouchDocument { public string Name { get; set; } public string Player1 { get; set; } public string? Player2 { get; set; } public bool IsPrivate { get; set; } /// /// Default constructor and setters are for deserialization. /// public Session() : base() { Name = string.Empty; Player1 = string.Empty; Player2 = string.Empty; } public Session(string id, Models.Session session) : base(id, nameof(Session)) { Name = session.Name; Player1 = session.Player1; Player2 = session.Player2; IsPrivate = session.IsPrivate; } public Models.Session ToDomainModel() => new(Name, IsPrivate, Player1, Player2); } }