12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- package github
- import (
- "context"
- "fmt"
- )
- func (s *IssuesService) ListAssignees(ctx context.Context, owner, repo string, opt *ListOptions) ([]*User, *Response, error) {
- u := fmt.Sprintf("repos/%v/%v/assignees", owner, repo)
- u, err := addOptions(u, opt)
- if err != nil {
- return nil, nil, err
- }
- req, err := s.client.NewRequest("GET", u, nil)
- if err != nil {
- return nil, nil, err
- }
- var assignees []*User
- resp, err := s.client.Do(ctx, req, &assignees)
- if err != nil {
- return nil, resp, err
- }
- return assignees, resp, nil
- }
- func (s *IssuesService) IsAssignee(ctx context.Context, owner, repo, user string) (bool, *Response, error) {
- u := fmt.Sprintf("repos/%v/%v/assignees/%v", owner, repo, user)
- req, err := s.client.NewRequest("GET", u, nil)
- if err != nil {
- return false, nil, err
- }
- resp, err := s.client.Do(ctx, req, nil)
- assignee, err := parseBoolResponse(err)
- return assignee, resp, err
- }
- func (s *IssuesService) AddAssignees(ctx context.Context, owner, repo string, number int, assignees []string) (*Issue, *Response, error) {
- users := &struct {
- Assignees []string `json:"assignees,omitempty"`
- }{Assignees: assignees}
- u := fmt.Sprintf("repos/%v/%v/issues/%v/assignees", owner, repo, number)
- req, err := s.client.NewRequest("POST", u, users)
- if err != nil {
- return nil, nil, err
- }
- issue := &Issue{}
- resp, err := s.client.Do(ctx, req, issue)
- return issue, resp, err
- }
- func (s *IssuesService) RemoveAssignees(ctx context.Context, owner, repo string, number int, assignees []string) (*Issue, *Response, error) {
- users := &struct {
- Assignees []string `json:"assignees,omitempty"`
- }{Assignees: assignees}
- u := fmt.Sprintf("repos/%v/%v/issues/%v/assignees", owner, repo, number)
- req, err := s.client.NewRequest("DELETE", u, users)
- if err != nil {
- return nil, nil, err
- }
- issue := &Issue{}
- resp, err := s.client.Do(ctx, req, issue)
- return issue, resp, err
- }
|