ACME TLS ALPN
This commit is contained in:
parent
17ad5153b8
commit
139f280f35
258 changed files with 25528 additions and 1516 deletions
85
vendor/github.com/sacloud/libsacloud/api/webaccel_search.go
generated
vendored
Normal file
85
vendor/github.com/sacloud/libsacloud/api/webaccel_search.go
generated
vendored
Normal file
|
@ -0,0 +1,85 @@
|
|||
package api
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"github.com/sacloud/libsacloud/sacloud"
|
||||
"net/url"
|
||||
"strings"
|
||||
)
|
||||
|
||||
// Reset 検索条件のリセット
|
||||
func (api *WebAccelAPI) Reset() *WebAccelAPI {
|
||||
api.SetEmpty()
|
||||
return api
|
||||
}
|
||||
|
||||
// SetEmpty 検索条件のリセット
|
||||
func (api *WebAccelAPI) SetEmpty() {
|
||||
api.reset()
|
||||
}
|
||||
|
||||
// FilterBy 指定キーでのフィルター
|
||||
func (api *WebAccelAPI) FilterBy(key string, value interface{}) *WebAccelAPI {
|
||||
api.filterBy(key, value, false)
|
||||
return api
|
||||
}
|
||||
|
||||
// WithNameLike 名称条件
|
||||
func (api *WebAccelAPI) WithNameLike(name string) *WebAccelAPI {
|
||||
return api.FilterBy("Name", name)
|
||||
}
|
||||
|
||||
// SetFilterBy 指定キーでのフィルター
|
||||
func (api *WebAccelAPI) SetFilterBy(key string, value interface{}) {
|
||||
api.filterBy(key, value, false)
|
||||
}
|
||||
|
||||
// SetNameLike 名称条件
|
||||
func (api *WebAccelAPI) SetNameLike(name string) {
|
||||
api.FilterBy("Name", name)
|
||||
}
|
||||
|
||||
// Find サイト一覧取得
|
||||
func (api *WebAccelAPI) Find() (*sacloud.SearchResponse, error) {
|
||||
|
||||
uri := fmt.Sprintf("%s/site", api.getResourceURL())
|
||||
|
||||
data, err := api.client.newRequest("GET", uri, nil)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
var res sacloud.SearchResponse
|
||||
if err := json.Unmarshal(data, &res); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
// handle filter(API側がFilterに対応していないためここでフィルタリング)
|
||||
for key, filter := range api.getSearchState().Filter {
|
||||
if key != "Name" {
|
||||
continue
|
||||
}
|
||||
strNames, ok := filter.(string)
|
||||
if !ok {
|
||||
continue
|
||||
}
|
||||
|
||||
names := strings.Split(strNames, " ")
|
||||
filtered := []sacloud.WebAccelSite{}
|
||||
for _, site := range res.WebAccelSites {
|
||||
for _, name := range names {
|
||||
|
||||
u, _ := url.Parse(name)
|
||||
|
||||
if strings.Contains(site.Name, u.Path) {
|
||||
filtered = append(filtered, site)
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
res.WebAccelSites = filtered
|
||||
}
|
||||
|
||||
return &res, nil
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue