From 8fa0b258ac89781dae269790a4bde09cbcd2f324 Mon Sep 17 00:00:00 2001 From: Michael Muré Date: Sun, 29 Jul 2018 18:58:42 +0200 Subject: cleaning --- graphql/resolvers/operations.go | 54 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 graphql/resolvers/operations.go (limited to 'graphql/resolvers/operations.go') diff --git a/graphql/resolvers/operations.go b/graphql/resolvers/operations.go new file mode 100644 index 00000000..1279a1b4 --- /dev/null +++ b/graphql/resolvers/operations.go @@ -0,0 +1,54 @@ +package resolvers + +import ( + "context" + "fmt" + "github.com/MichaelMure/git-bug/bug" + "github.com/MichaelMure/git-bug/bug/operations" + "time" +) + +type addCommentOperationResolver struct{} + +func (addCommentOperationResolver) Date(ctx context.Context, obj *operations.AddCommentOperation) (time.Time, error) { + return obj.Time(), nil +} + +type createOperationResolver struct{} + +func (createOperationResolver) Date(ctx context.Context, obj *operations.CreateOperation) (time.Time, error) { + return obj.Time(), nil +} + +type labelChangeOperation struct{} + +func (labelChangeOperation) Date(ctx context.Context, obj *operations.LabelChangeOperation) (time.Time, error) { + return obj.Time(), nil +} + +type setStatusOperationResolver struct{} + +func (setStatusOperationResolver) Date(ctx context.Context, obj *operations.SetStatusOperation) (time.Time, error) { + return obj.Time(), nil +} + +func (setStatusOperationResolver) Status(ctx context.Context, obj *operations.SetStatusOperation) (Status, error) { + return convertStatus(obj.Status) +} + +type setTitleOperationResolver struct{} + +func (setTitleOperationResolver) Date(ctx context.Context, obj *operations.SetTitleOperation) (time.Time, error) { + return obj.Time(), nil +} + +func convertStatus(status bug.Status) (Status, error) { + switch status { + case bug.OpenStatus: + return StatusOpen, nil + case bug.ClosedStatus: + return StatusClosed, nil + } + + return "", fmt.Errorf("Unknown status") +} -- cgit