You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
76 lines
1.8 KiB
Go
76 lines
1.8 KiB
Go
// Copyright 2017 Drone.IO Inc. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
package gitee
|
|
|
|
import (
|
|
"net/url"
|
|
"strconv"
|
|
|
|
"git.awesome-for.me/liuzhiguo/go-scm/scm"
|
|
)
|
|
|
|
func encodeListOptions(opts scm.ListOptions) string {
|
|
params := url.Values{}
|
|
if opts.Page != 0 {
|
|
params.Set("page", strconv.Itoa(opts.Page))
|
|
}
|
|
if opts.Size != 0 {
|
|
params.Set("per_page", strconv.Itoa(opts.Size))
|
|
}
|
|
return params.Encode()
|
|
}
|
|
|
|
func encodeCommitListOptions(opts scm.CommitListOptions) string {
|
|
params := url.Values{}
|
|
if opts.Page != 0 {
|
|
params.Set("page", strconv.Itoa(opts.Page))
|
|
}
|
|
if opts.Size != 0 {
|
|
params.Set("per_page", strconv.Itoa(opts.Size))
|
|
}
|
|
if opts.Ref != "" {
|
|
params.Set("sha", opts.Ref)
|
|
}
|
|
return params.Encode()
|
|
}
|
|
|
|
func encodeIssueListOptions(opts scm.IssueListOptions) string {
|
|
params := url.Values{}
|
|
if opts.Page != 0 {
|
|
params.Set("page", strconv.Itoa(opts.Page))
|
|
}
|
|
if opts.Size != 0 {
|
|
params.Set("per_page", strconv.Itoa(opts.Size))
|
|
}
|
|
// state: open, progressing, closed, rejected, all; default: open
|
|
if opts.Open && opts.Closed {
|
|
params.Set("state", "all")
|
|
} else if opts.Closed {
|
|
params.Set("state", "closed")
|
|
} else if opts.Open {
|
|
params.Set("state", "open")
|
|
}
|
|
return params.Encode()
|
|
}
|
|
|
|
func encodePullRequestListOptions(opts scm.PullRequestListOptions) string {
|
|
params := url.Values{}
|
|
if opts.Page != 0 {
|
|
params.Set("page", strconv.Itoa(opts.Page))
|
|
}
|
|
if opts.Size != 0 {
|
|
params.Set("per_page", strconv.Itoa(opts.Size))
|
|
}
|
|
// state: open, closed, merged, all; default: open
|
|
if opts.Open && opts.Closed {
|
|
params.Set("state", "all")
|
|
} else if opts.Closed {
|
|
params.Set("state", "closed")
|
|
} else if opts.Open {
|
|
params.Set("state", "open")
|
|
}
|
|
return params.Encode()
|
|
}
|