github.com/opentelekomcloud/gophertelekomcloud@v0.9.3/openstack/apigw/v2/app_auth/GetBoundApps.go (about)

     1  package app_auth
     2  
     3  import (
     4  	golangsdk "github.com/opentelekomcloud/gophertelekomcloud"
     5  	"github.com/opentelekomcloud/gophertelekomcloud/pagination"
     6  )
     7  
     8  type ListAppsBoundOpts struct {
     9  	GatewayID string `json:"-"`
    10  	AppID     string `q:"app_id"`
    11  	ApiID     string `q:"api_id"`
    12  	ApiName   string `q:"api_name"`
    13  	EnvID     string `q:"env_id"`
    14  }
    15  
    16  func ListAppsBound(client *golangsdk.ServiceClient, opts ListAppsBoundOpts) ([]ApiAuth, error) {
    17  	q, err := golangsdk.BuildQueryString(&opts)
    18  	if err != nil {
    19  		return nil, err
    20  	}
    21  	pages, err := pagination.Pager{
    22  		Client: client,
    23  		InitialURL: client.ServiceURL("apigw", "instances", opts.GatewayID, "app-auths",
    24  			"binded-apps") + q.String(),
    25  		CreatePage: func(r pagination.NewPageResult) pagination.NewPage {
    26  			return BindingPage{NewSinglePageBase: pagination.NewSinglePageBase{NewPageResult: r}}
    27  		},
    28  	}.NewAllPages()
    29  
    30  	if err != nil {
    31  		return nil, err
    32  	}
    33  	return ExtractAuths(pages)
    34  }