@@ -60,22 +60,25 @@ private[tournament] object Pairing {
60
60
61
61
case class LastOpponents (hash : Map [User .ID , User .ID ]) extends AnyVal
62
62
63
- def apply (tourId : Tournament .ID , u1 : User .ID , u2 : User .ID ): Pairing = new Pairing (
64
- id = IdGenerator .uncheckedGame,
65
- tourId = tourId,
66
- status = chess.Status .Created ,
67
- user1 = u1,
68
- user2 = u2,
69
- winner = none,
70
- turns = none,
71
- berserk1 = false ,
72
- berserk2 = false
73
- )
63
+ private def make (tourId : Tournament .ID , u1 : User .ID , u2 : User .ID ): Fu [Pairing ] =
64
+ fuccess(IdGenerator .uncheckedGame) dmap { id =>
65
+ new Pairing (
66
+ id = id,
67
+ tourId = tourId,
68
+ status = chess.Status .Created ,
69
+ user1 = u1,
70
+ user2 = u2,
71
+ winner = none,
72
+ turns = none,
73
+ berserk1 = false ,
74
+ berserk2 = false
75
+ )
76
+ }
74
77
75
78
case class Prep (tourId : Tournament .ID , user1 : User .ID , user2 : User .ID ) {
76
- def toPairing (firstGetsWhite : Boolean ) =
77
- if (firstGetsWhite) Pairing (tourId, user1, user2)
78
- else Pairing (tourId, user2, user1)
79
+ def toPairing (firstGetsWhite : Boolean ): Fu [ Pairing ] =
80
+ if (firstGetsWhite) Pairing .make (tourId, user1, user2)
81
+ else Pairing .make (tourId, user2, user1)
79
82
}
80
83
81
84
def prep (tour : Tournament , ps : (Player , Player )) = Pairing .Prep (tour.id, ps._1.userId, ps._2.userId)
0 commit comments