This repository has been archived on 2022-09-04. You can view files and clone it, but cannot push or open issues or pull requests.
api/player/repository.go

34 lines
806 B
Go
Raw Normal View History

2020-06-02 15:45:21 +00:00
package player
import (
"context"
"github.com/tribalwarshelp/shared/tw/twmodel"
2020-06-02 15:45:21 +00:00
)
type FetchConfig struct {
Server string
Filter *twmodel.PlayerFilter
Select bool
Count bool
Sort []string
Limit int
Offset int
}
type SearchPlayerConfig struct {
Version string
Name string
ID int
Count bool
Sort []string
Limit int
Offset int
}
2020-06-02 15:45:21 +00:00
type Repository interface {
Fetch(ctx context.Context, cfg FetchConfig) ([]*twmodel.Player, int, error)
FetchNameChanges(ctx context.Context, code twmodel.VersionCode, playerID ...int) (map[int][]*twmodel.PlayerNameChange, error)
FetchPlayerServers(ctx context.Context, code twmodel.VersionCode, playerID ...int) (map[int][]string, error)
SearchPlayer(ctx context.Context, cfg SearchPlayerConfig) ([]*twmodel.FoundPlayer, int, error)
2020-06-02 15:45:21 +00:00
}