1// Package resolvers contains the various GraphQL resolvers
2package resolvers
3
4import (
5 "github.com/MichaelMure/git-bug/cache"
6 "github.com/MichaelMure/git-bug/graphql/graph"
7)
8
9var _ graph.ResolverRoot = &RootResolver{}
10
11type RootResolver struct {
12 cache.MultiRepoCache
13}
14
15func NewRootResolver() *RootResolver {
16 return &RootResolver{
17 MultiRepoCache: cache.NewMultiRepoCache(),
18 }
19}
20
21func (r RootResolver) Query() graph.QueryResolver {
22 return &rootQueryResolver{
23 cache: &r.MultiRepoCache,
24 }
25}
26
27func (r RootResolver) Mutation() graph.MutationResolver {
28 return &mutationResolver{
29 cache: &r.MultiRepoCache,
30 }
31}
32
33func (RootResolver) Bug() graph.BugResolver {
34 return &bugResolver{}
35}
36
37func (r RootResolver) Identity() graph.IdentityResolver {
38 return &identityResolver{}
39}
40
41func (RootResolver) CommentHistoryStep() graph.CommentHistoryStepResolver {
42 return &commentHistoryStepResolver{}
43}
44
45func (RootResolver) AddCommentTimelineItem() graph.AddCommentTimelineItemResolver {
46 return &addCommentTimelineItemResolver{}
47}
48
49func (RootResolver) CreateTimelineItem() graph.CreateTimelineItemResolver {
50 return &createTimelineItemResolver{}
51}
52
53func (r RootResolver) LabelChangeTimelineItem() graph.LabelChangeTimelineItemResolver {
54 return &labelChangeTimelineItem{}
55}
56
57func (r RootResolver) SetStatusTimelineItem() graph.SetStatusTimelineItemResolver {
58 return &setStatusTimelineItem{}
59}
60
61func (r RootResolver) SetTitleTimelineItem() graph.SetTitleTimelineItemResolver {
62 return &setTitleTimelineItem{}
63}
64
65func (RootResolver) CreateOperation() graph.CreateOperationResolver {
66 return &createOperationResolver{}
67}
68
69func (RootResolver) AddCommentOperation() graph.AddCommentOperationResolver {
70 return &addCommentOperationResolver{}
71}
72
73func (r RootResolver) EditCommentOperation() graph.EditCommentOperationResolver {
74 return &editCommentOperationResolver{}
75}
76
77func (RootResolver) LabelChangeOperation() graph.LabelChangeOperationResolver {
78 return &labelChangeOperation{}
79}
80
81func (RootResolver) Repository() graph.RepositoryResolver {
82 return &repoResolver{}
83}
84
85func (RootResolver) SetStatusOperation() graph.SetStatusOperationResolver {
86 return &setStatusOperationResolver{}
87}
88
89func (RootResolver) SetTitleOperation() graph.SetTitleOperationResolver {
90 return &setTitleOperationResolver{}
91}