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 transactions: make(map[string]transaction),
31 }
32}
33
34func (RootResolver) Repository() graph.RepositoryResolver {
35 return &repoResolver{}
36}
37
38func (RootResolver) Bug() graph.BugResolver {
39 return &bugResolver{}
40}
41
42func (RootResolver) Color() graph.ColorResolver {
43 return &colorResolver{}
44}
45
46func (r RootResolver) Comment() graph.CommentResolver {
47 return &commentResolver{}
48}
49
50func (RootResolver) Label() graph.LabelResolver {
51 return &labelResolver{}
52}
53
54func (r RootResolver) Identity() graph.IdentityResolver {
55 return &identityResolver{}
56}
57
58func (RootResolver) CommentHistoryStep() graph.CommentHistoryStepResolver {
59 return &commentHistoryStepResolver{}
60}
61
62func (RootResolver) AddCommentTimelineItem() graph.AddCommentTimelineItemResolver {
63 return &addCommentTimelineItemResolver{}
64}
65
66func (RootResolver) CreateTimelineItem() graph.CreateTimelineItemResolver {
67 return &createTimelineItemResolver{}
68}
69
70func (r RootResolver) LabelChangeTimelineItem() graph.LabelChangeTimelineItemResolver {
71 return &labelChangeTimelineItem{}
72}
73
74func (r RootResolver) SetStatusTimelineItem() graph.SetStatusTimelineItemResolver {
75 return &setStatusTimelineItem{}
76}
77
78func (r RootResolver) SetTitleTimelineItem() graph.SetTitleTimelineItemResolver {
79 return &setTitleTimelineItem{}
80}
81
82func (RootResolver) CreateOperation() graph.CreateOperationResolver {
83 return &createOperationResolver{}
84}
85
86func (RootResolver) AddCommentOperation() graph.AddCommentOperationResolver {
87 return &addCommentOperationResolver{}
88}
89
90func (r RootResolver) EditCommentOperation() graph.EditCommentOperationResolver {
91 return &editCommentOperationResolver{}
92}
93
94func (RootResolver) LabelChangeOperation() graph.LabelChangeOperationResolver {
95 return &labelChangeOperationResolver{}
96}
97
98func (RootResolver) SetStatusOperation() graph.SetStatusOperationResolver {
99 return &setStatusOperationResolver{}
100}
101
102func (RootResolver) SetTitleOperation() graph.SetTitleOperationResolver {
103 return &setTitleOperationResolver{}
104}
105
106func (r RootResolver) LabelChangeResult() graph.LabelChangeResultResolver {
107 return &labelChangeResultResolver{}
108}