Commit cf974dcb authored by Lorac's avatar Lorac Committed by Sander van Harmelen

Add paging option for award emoji API (#321)

parent 4676fc31
...@@ -56,31 +56,40 @@ const ( ...@@ -56,31 +56,40 @@ const (
awardSnippets = "snippets" awardSnippets = "snippets"
) )
// ListEmojiAwardsOptions represents the available options for listing emoji
// for each resources
//
// GitLab API docs:
// https://docs.gitlab.com/ce/api/award_emoji.html
type ListEmojiAwardsOptions struct {
ListOptions
}
// ListMergeRequestAwardEmoji gets a list of all award emoji on the merge request. // ListMergeRequestAwardEmoji gets a list of all award emoji on the merge request.
// //
// GitLab API docs: // GitLab API docs:
// https://docs.gitlab.com/ce/api/award_emoji.html#list-an-awardable-39-s-award-emoji // https://docs.gitlab.com/ce/api/award_emoji.html#list-an-awardable-39-s-award-emoji
func (s *AwardEmojiService) ListMergeRequestAwardEmoji(pid interface{}, mergeRequestIID int, options ...OptionFunc) ([]*AwardEmoji, *Response, error) { func (s *AwardEmojiService) ListMergeRequestAwardEmoji(pid interface{}, mergeRequestIID int, opt *ListEmojiAwardsOptions, options ...OptionFunc) ([]*AwardEmoji, *Response, error) {
return s.listAwardEmoji(pid, awardMergeRequest, mergeRequestIID, options...) return s.listAwardEmoji(pid, awardMergeRequest, mergeRequestIID, opt, options...)
} }
// ListIssueAwardEmoji gets a list of all award emoji on the issue. // ListIssueAwardEmoji gets a list of all award emoji on the issue.
// //
// GitLab API docs: // GitLab API docs:
// https://docs.gitlab.com/ce/api/award_emoji.html#list-an-awardable-39-s-award-emoji // https://docs.gitlab.com/ce/api/award_emoji.html#list-an-awardable-39-s-award-emoji
func (s *AwardEmojiService) ListIssueAwardEmoji(pid interface{}, issueIID int, options ...OptionFunc) ([]*AwardEmoji, *Response, error) { func (s *AwardEmojiService) ListIssueAwardEmoji(pid interface{}, issueIID int, opt *ListEmojiAwardsOptions, options ...OptionFunc) ([]*AwardEmoji, *Response, error) {
return s.listAwardEmoji(pid, awardIssue, issueIID, options...) return s.listAwardEmoji(pid, awardIssue, issueIID, opt, options...)
} }
// ListSnippetAwardEmoji gets a list of all award emoji on the snippet. // ListSnippetAwardEmoji gets a list of all award emoji on the snippet.
// //
// GitLab API docs: // GitLab API docs:
// https://docs.gitlab.com/ce/api/award_emoji.html#list-an-awardable-39-s-award-emoji // https://docs.gitlab.com/ce/api/award_emoji.html#list-an-awardable-39-s-award-emoji
func (s *AwardEmojiService) ListSnippetAwardEmoji(pid interface{}, snippetID int, options ...OptionFunc) ([]*AwardEmoji, *Response, error) { func (s *AwardEmojiService) ListSnippetAwardEmoji(pid interface{}, snippetID int, opt *ListEmojiAwardsOptions, options ...OptionFunc) ([]*AwardEmoji, *Response, error) {
return s.listAwardEmoji(pid, awardSnippets, snippetID, options...) return s.listAwardEmoji(pid, awardSnippets, snippetID, opt, options...)
} }
func (s *AwardEmojiService) listAwardEmoji(pid interface{}, resource string, resourceID int, options ...OptionFunc) ([]*AwardEmoji, *Response, error) { func (s *AwardEmojiService) listAwardEmoji(pid interface{}, resource string, resourceID int, opt *ListEmojiAwardsOptions, options ...OptionFunc) ([]*AwardEmoji, *Response, error) {
project, err := parseID(pid) project, err := parseID(pid)
if err != nil { if err != nil {
return nil, nil, err return nil, nil, err
...@@ -91,7 +100,7 @@ func (s *AwardEmojiService) listAwardEmoji(pid interface{}, resource string, res ...@@ -91,7 +100,7 @@ func (s *AwardEmojiService) listAwardEmoji(pid interface{}, resource string, res
resourceID, resourceID,
) )
req, err := s.client.NewRequest("GET", u, nil, options) req, err := s.client.NewRequest("GET", u, opt, options)
if err != nil { if err != nil {
return nil, nil, err return nil, nil, err
} }
...@@ -253,8 +262,8 @@ func (s *AwardEmojiService) deleteAwardEmoji(pid interface{}, resource string, r ...@@ -253,8 +262,8 @@ func (s *AwardEmojiService) deleteAwardEmoji(pid interface{}, resource string, r
// //
// GitLab API docs: // GitLab API docs:
// https://docs.gitlab.com/ce/api/award_emoji.html#award-emoji-on-notes // https://docs.gitlab.com/ce/api/award_emoji.html#award-emoji-on-notes
func (s *AwardEmojiService) ListIssuesAwardEmojiOnNote(pid interface{}, issueID, noteID int, options ...OptionFunc) ([]*AwardEmoji, *Response, error) { func (s *AwardEmojiService) ListIssuesAwardEmojiOnNote(pid interface{}, issueID, noteID int, opt *ListEmojiAwardsOptions, options ...OptionFunc) ([]*AwardEmoji, *Response, error) {
return s.listAwardEmojiOnNote(pid, awardIssue, issueID, noteID, options...) return s.listAwardEmojiOnNote(pid, awardIssue, issueID, noteID, opt, options...)
} }
// ListMergeRequestAwardEmojiOnNote gets a list of all award emoji on a note // ListMergeRequestAwardEmojiOnNote gets a list of all award emoji on a note
...@@ -262,8 +271,8 @@ func (s *AwardEmojiService) ListIssuesAwardEmojiOnNote(pid interface{}, issueID, ...@@ -262,8 +271,8 @@ func (s *AwardEmojiService) ListIssuesAwardEmojiOnNote(pid interface{}, issueID,
// //
// GitLab API docs: // GitLab API docs:
// https://docs.gitlab.com/ce/api/award_emoji.html#award-emoji-on-notes // https://docs.gitlab.com/ce/api/award_emoji.html#award-emoji-on-notes
func (s *AwardEmojiService) ListMergeRequestAwardEmojiOnNote(pid interface{}, mergeRequestIID, noteID int, options ...OptionFunc) ([]*AwardEmoji, *Response, error) { func (s *AwardEmojiService) ListMergeRequestAwardEmojiOnNote(pid interface{}, mergeRequestIID, noteID int, opt *ListEmojiAwardsOptions, options ...OptionFunc) ([]*AwardEmoji, *Response, error) {
return s.listAwardEmojiOnNote(pid, awardMergeRequest, mergeRequestIID, noteID, options...) return s.listAwardEmojiOnNote(pid, awardMergeRequest, mergeRequestIID, noteID, opt, options...)
} }
// ListSnippetAwardEmojiOnNote gets a list of all award emoji on a note from the // ListSnippetAwardEmojiOnNote gets a list of all award emoji on a note from the
...@@ -271,11 +280,11 @@ func (s *AwardEmojiService) ListMergeRequestAwardEmojiOnNote(pid interface{}, me ...@@ -271,11 +280,11 @@ func (s *AwardEmojiService) ListMergeRequestAwardEmojiOnNote(pid interface{}, me
// //
// GitLab API docs: // GitLab API docs:
// https://docs.gitlab.com/ce/api/award_emoji.html#award-emoji-on-notes // https://docs.gitlab.com/ce/api/award_emoji.html#award-emoji-on-notes
func (s *AwardEmojiService) ListSnippetAwardEmojiOnNote(pid interface{}, snippetIID, noteID int, options ...OptionFunc) ([]*AwardEmoji, *Response, error) { func (s *AwardEmojiService) ListSnippetAwardEmojiOnNote(pid interface{}, snippetIID, noteID int, opt *ListEmojiAwardsOptions, options ...OptionFunc) ([]*AwardEmoji, *Response, error) {
return s.listAwardEmojiOnNote(pid, awardSnippets, snippetIID, noteID, options...) return s.listAwardEmojiOnNote(pid, awardSnippets, snippetIID, noteID, opt, options...)
} }
func (s *AwardEmojiService) listAwardEmojiOnNote(pid interface{}, resources string, ressourceID, noteID int, options ...OptionFunc) ([]*AwardEmoji, *Response, error) { func (s *AwardEmojiService) listAwardEmojiOnNote(pid interface{}, resources string, ressourceID, noteID int, opt *ListEmojiAwardsOptions, options ...OptionFunc) ([]*AwardEmoji, *Response, error) {
project, err := parseID(pid) project, err := parseID(pid)
if err != nil { if err != nil {
return nil, nil, err return nil, nil, err
...@@ -283,7 +292,7 @@ func (s *AwardEmojiService) listAwardEmojiOnNote(pid interface{}, resources stri ...@@ -283,7 +292,7 @@ func (s *AwardEmojiService) listAwardEmojiOnNote(pid interface{}, resources stri
u := fmt.Sprintf("projects/%s/%s/%d/notes/%d/award_emoji", url.QueryEscape(project), resources, u := fmt.Sprintf("projects/%s/%s/%d/notes/%d/award_emoji", url.QueryEscape(project), resources,
ressourceID, noteID) ressourceID, noteID)
req, err := s.client.NewRequest("GET", u, nil, options) req, err := s.client.NewRequest("GET", u, opt, options)
if err != nil { if err != nil {
return nil, nil, err return nil, nil, err
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment