From 2ab6381a94d55fa22b80acdbb18849d6b24951f9 Mon Sep 17 00:00:00 2001 From: Michael Muré Date: Sun, 21 Jun 2020 22:12:04 +0200 Subject: Reorganize the webUI and API code Included in the changes: - create a new /api root package to hold all API code, migrate /graphql in there - git API handlers all use the cache instead of the repo directly - git API handlers are now tested - git API handlers now require a "repo" mux parameter - lots of untangling of API/handlers/middleware - less code in commands/webui.go --- api/graphql/resolvers/root.go | 107 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 107 insertions(+) create mode 100644 api/graphql/resolvers/root.go (limited to 'api/graphql/resolvers/root.go') diff --git a/api/graphql/resolvers/root.go b/api/graphql/resolvers/root.go new file mode 100644 index 00000000..bb3bf5cf --- /dev/null +++ b/api/graphql/resolvers/root.go @@ -0,0 +1,107 @@ +// Package resolvers contains the various GraphQL resolvers +package resolvers + +import ( + "github.com/MichaelMure/git-bug/api/graphql/graph" + "github.com/MichaelMure/git-bug/cache" +) + +var _ graph.ResolverRoot = &RootResolver{} + +type RootResolver struct { + *cache.MultiRepoCache +} + +func NewRootResolver(mrc *cache.MultiRepoCache) *RootResolver { + return &RootResolver{ + MultiRepoCache: mrc, + } +} + +func (r RootResolver) Query() graph.QueryResolver { + return &rootQueryResolver{ + cache: r.MultiRepoCache, + } +} + +func (r RootResolver) Mutation() graph.MutationResolver { + return &mutationResolver{ + cache: r.MultiRepoCache, + } +} + +func (RootResolver) Repository() graph.RepositoryResolver { + return &repoResolver{} +} + +func (RootResolver) Bug() graph.BugResolver { + return &bugResolver{} +} + +func (RootResolver) Color() graph.ColorResolver { + return &colorResolver{} +} + +func (r RootResolver) Comment() graph.CommentResolver { + return &commentResolver{} +} + +func (RootResolver) Label() graph.LabelResolver { + return &labelResolver{} +} + +func (r RootResolver) Identity() graph.IdentityResolver { + return &identityResolver{} +} + +func (RootResolver) CommentHistoryStep() graph.CommentHistoryStepResolver { + return &commentHistoryStepResolver{} +} + +func (RootResolver) AddCommentTimelineItem() graph.AddCommentTimelineItemResolver { + return &addCommentTimelineItemResolver{} +} + +func (RootResolver) CreateTimelineItem() graph.CreateTimelineItemResolver { + return &createTimelineItemResolver{} +} + +func (r RootResolver) LabelChangeTimelineItem() graph.LabelChangeTimelineItemResolver { + return &labelChangeTimelineItem{} +} + +func (r RootResolver) SetStatusTimelineItem() graph.SetStatusTimelineItemResolver { + return &setStatusTimelineItem{} +} + +func (r RootResolver) SetTitleTimelineItem() graph.SetTitleTimelineItemResolver { + return &setTitleTimelineItem{} +} + +func (RootResolver) CreateOperation() graph.CreateOperationResolver { + return &createOperationResolver{} +} + +func (RootResolver) AddCommentOperation() graph.AddCommentOperationResolver { + return &addCommentOperationResolver{} +} + +func (r RootResolver) EditCommentOperation() graph.EditCommentOperationResolver { + return &editCommentOperationResolver{} +} + +func (RootResolver) LabelChangeOperation() graph.LabelChangeOperationResolver { + return &labelChangeOperationResolver{} +} + +func (RootResolver) SetStatusOperation() graph.SetStatusOperationResolver { + return &setStatusOperationResolver{} +} + +func (RootResolver) SetTitleOperation() graph.SetTitleOperationResolver { + return &setTitleOperationResolver{} +} + +func (r RootResolver) LabelChangeResult() graph.LabelChangeResultResolver { + return &labelChangeResultResolver{} +} -- cgit