query.go

 1package resolvers
 2
 3import (
 4	"context"
 5	"github.com/MichaelMure/git-bug/cache"
 6)
 7
 8type rootQueryResolver struct {
 9	cache cache.Cacher
10}
11
12func (r rootQueryResolver) DefaultRepository(ctx context.Context) (*repoResolver, error) {
13	repo, err := r.cache.DefaultRepo()
14
15	if err != nil {
16		return nil, err
17	}
18
19	return &repoResolver{
20		cache: r.cache,
21		repo:  repo,
22	}, nil
23}
24
25func (r rootQueryResolver) Repository(ctx context.Context, id string) (*repoResolver, error) {
26	repo, err := r.cache.ResolveRepo(id)
27
28	if err != nil {
29		return nil, err
30	}
31
32	return &repoResolver{
33		cache: r.cache,
34		repo:  repo,
35	}, nil
36}