Feat: add player interface
This commit is contained in:
		| @@ -1,11 +1,31 @@ | ||||
| package repos | ||||
|  | ||||
| import "github.com/jackc/pgx/v5/pgxpool" | ||||
| import ( | ||||
| 	"context" | ||||
| 	"log/slog" | ||||
| 	"os" | ||||
|  | ||||
| 	"github.com/jackc/pgx/v5/pgxpool" | ||||
| ) | ||||
|  | ||||
| type AllRepos interface { | ||||
| 	RoomsRepo | ||||
| 	ActionsRepo | ||||
| 	PlayersRepo | ||||
| } | ||||
|  | ||||
| type RepoProvider struct { | ||||
| 	DB *pgxpool.Pool | ||||
| } | ||||
|  | ||||
| func NewRepoProvider(pathToDB string) *RepoProvider { | ||||
| 	dbpool, err := pgxpool.New(context.Background(), pathToDB) | ||||
| 	if err != nil { | ||||
| 		slog.Error("Unable to connect to database", "error", err) | ||||
| 		os.Exit(1) | ||||
| 	} | ||||
| 	slog.Info("Successfully connected to database") | ||||
| 	return &RepoProvider{ | ||||
| 		DB: dbpool, | ||||
| 	} | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Grail Finder
					Grail Finder