Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrInvalidArgument = errors.New("bingo: invalid argument") ErrMaxNumbersGenerated = errors.New("bingo: max number of numbers generated for the game") )
ErrInvalidArgument is returned when one or more arguments are invalid.
Functions ¶
Types ¶
type Service ¶
type Service interface { // create a new bingo game and return its ID CreateGame(context.Context) (game.ID, error) // create a new ticket for gameID with username CreateTicket(context.Context, game.ID, string) (ticket.ID, error) // display ticket as HTML ShowTicket(context.Context, ticket.ID) (Ticket, error) // generate a random number, which has not been picked earlier for this game GenerateNumber(context.Context, game.ID) (int64, error) // returns all numbers generated so far for a game GetAllNumbers(context.Context, game.ID) ([]int64, error) // returns stats for a game. GetStats(context.Context, game.ID) (numbersDrawn, ticketsGenerated int, err error) }
Service is the interface that provides bingo methods.
func NewService ¶
func NewService(games game.Repository, tickets ticket.Repository) Service
NewService returns implementation of `Service`.
Click to show internal directories.
Click to hide internal directories.