diff options
author | Michael Muré <batolettre@gmail.com> | 2018-07-29 19:37:06 +0200 |
---|---|---|
committer | Michael Muré <batolettre@gmail.com> | 2018-07-29 19:37:32 +0200 |
commit | c351cfd30d59c9179cc940f9ae15c461462e1a50 (patch) | |
tree | f2a218d26f350f265200e2ee89a1c94ca26fd770 /graphql/resolvers/pagers.go | |
parent | 8fa0b258ac89781dae269790a4bde09cbcd2f324 (diff) | |
download | git-bug-c351cfd30d59c9179cc940f9ae15c461462e1a50.tar.gz |
graphql: directly return a connection, cleaning
Diffstat (limited to 'graphql/resolvers/pagers.go')
-rw-r--r-- | graphql/resolvers/pagers.go | 51 |
1 files changed, 0 insertions, 51 deletions
diff --git a/graphql/resolvers/pagers.go b/graphql/resolvers/pagers.go deleted file mode 100644 index 378dcdbf..00000000 --- a/graphql/resolvers/pagers.go +++ /dev/null @@ -1,51 +0,0 @@ -//go:generate genny -in=pagers_template.go -out=pager_bug.go gen "NodeType=bug.Snapshot EdgeType=BugEdge" -//go:generate genny -in=pagers_template.go -out=pager_operation.go gen "NodeType=bug.Operation EdgeType=OperationEdge" -//go:generate genny -in=pagers_template.go -out=pager_comment.go gen "NodeType=bug.Comment EdgeType=CommentEdge" - -package resolvers - -import ( - "encoding/base64" - "fmt" - "strconv" - "strings" -) - -const cursorPrefix = "cursor:" - -type Edge interface { - GetCursor() string -} - -// Creates the cursor string from an offset -func offsetToCursor(offset int) string { - str := fmt.Sprintf("%v%v", cursorPrefix, offset) - return base64.StdEncoding.EncodeToString([]byte(str)) -} - -// Re-derives the offset from the cursor string. -func cursorToOffset(cursor string) (int, error) { - str := "" - b, err := base64.StdEncoding.DecodeString(cursor) - if err == nil { - str = string(b) - } - str = strings.Replace(str, cursorPrefix, "", -1) - offset, err := strconv.Atoi(str) - if err != nil { - return 0, fmt.Errorf("Invalid cursor") - } - return offset, nil -} - -func (e OperationEdge) GetCursor() string { - return e.Cursor -} - -func (e BugEdge) GetCursor() string { - return e.Cursor -} - -func (e CommentEdge) GetCursor() string { - return e.Cursor -} |