1package identity
2
3import "github.com/MichaelMure/git-bug/repository"
4
5// Resolver define the interface of an Identity resolver, able to load
6// an identity from, for example, a repo or a cache.
7type Resolver interface {
8 ResolveIdentity(id string) (Interface, error)
9}
10
11// DefaultResolver is a Resolver loading Identities directly from a Repo
12type SimpleResolver struct {
13 repo repository.Repo
14}
15
16func NewSimpleResolver(repo repository.Repo) *SimpleResolver {
17 return &SimpleResolver{repo: repo}
18}
19
20func (r *SimpleResolver) ResolveIdentity(id string) (Interface, error) {
21 return ReadLocal(r.repo, id)
22}