Skip to content

Commit

Permalink
cleanup TryGetEndpoints
Browse files Browse the repository at this point in the history
  • Loading branch information
JacksonTian authored and yndu13 committed Feb 2, 2024
1 parent 019a2ac commit c8b0e38
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 63 deletions.
49 changes: 9 additions & 40 deletions meta/product.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,37 +24,28 @@ type ProductSet struct {
Products []Product `json:"products"`
}

type SiteType string

const (
ChinaSite = SiteType("china")
InternationalSite = SiteType("international")
JapanSite = SiteType("japan")
)

type Product struct {
Code string `json:"code"`
Version string `json:"version"`
Catalog1 map[string]string `json:"catalog1"`
Catalog2 map[string]string `json:"catalog2"`
Name map[string]string `json:"name"`

Code string `json:"code"`
Version string `json:"version"`
Catalog1 map[string]string `json:"catalog1"`
Catalog2 map[string]string `json:"catalog2"`
Name map[string]string `json:"name"`
LocationServiceCode string `json:"location_service_code"`
RegionalEndpoints map[string]string `json:"regional_endpoints"`
GlobalEndpoint string `json:"global_endpoint"`
RegionalEndpointPattern string `json:"regional_endpoint_patterns"`

ApiStyle string `json:"api_style"`
ApiNames []string `json:"apis"`
ApiStyle string `json:"api_style"`
ApiNames []string `json:"apis"`
}

func (a *Product) GetLowerCode() string {
return strings.ToLower(a.Code)
}

func (a *Product) GetEndpoint(region string, client *sdk.Client) (string, error) {
func (a *Product) GetEndpoint(region string, client *sdk.Client) (endpoint string, err error) {
var le error
if a.LocationServiceCode != "" {
// resolve endpoint from location service
rp := endpoints.ResolveParam{
Product: a.Code,
RegionId: region,
Expand All @@ -81,25 +72,3 @@ func (a *Product) GetEndpoint(region string, client *sdk.Client) (string, error)

return "", &InvalidEndpointError{le, region, a}
}

func (a *Product) TryGetEndpoints(region string, client *sdk.Client) (endpoint string, lcEndpoint string) {
endpoint = a.RegionalEndpoints[region]

if a.LocationServiceCode != "" {
rp := endpoints.ResolveParam{
Product: a.Code,
RegionId: region,
LocationProduct: a.LocationServiceCode,
LocationEndpointType: "openAPI",
CommonApi: client.ProcessCommonRequest,
}
ep, err := endpoints.Resolve(&rp)
if err != nil {
lcEndpoint = ""
} else {
lcEndpoint = ep
}
}

return
}
23 changes: 0 additions & 23 deletions meta/product_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,6 @@ func TestProduct_GetEndpoint(t *testing.T) {
assert.Nil(t, err)
assert.Equal(t, endpoint, "arms.cn-hangzhou.aliyuncs.com")

//endpoint, err = product.GetEndpoint("cn-hangzhou", client)
//assert.Nil(t, err)
//assert.Equal(t, endpoint, "arms-cn-hangzhou.aliyuncs.com")

product.LocationServiceCode = ""
product.GlobalEndpoint = "arms.aliyuncs.com"
endpoint, err = product.GetEndpoint("us-west-1", client)
Expand All @@ -57,22 +53,3 @@ func TestProduct_GetEndpoint(t *testing.T) {
assert.NotNil(t, err)
assert.Contains(t, err.Error(), "us-west-1")
}

func TestProduct_TryGetEndpoints(t *testing.T) {
product := &Product{
Code: "arms",
RegionalEndpoints: map[string]string{
"cn-hangzhou": "arms.cn-hanghzou.aliyuncs.com",
},
LocationServiceCode: "arms",
}
client, err := sdk.NewClientWithAccessKey("regionid", "acesskeyid", "accesskeysecret")
assert.Nil(t, err)
//endpoint, lcEndpoint := product.TryGetEndpoints("cn-hangzhou", client)
//assert.Equal(t,"arms.cn-hanghzou.aliyuncs.com", endpoint)
//assert.Equal(t, "", lcEndpoint)

endpoint, lcEndpoint := product.TryGetEndpoints("cn-hangzhou", client)
assert.Equal(t, "arms.cn-hanghzou.aliyuncs.com", endpoint)
assert.Equal(t, "arms.cn-hangzhou.aliyuncs.com", lcEndpoint)
}

0 comments on commit c8b0e38

Please sign in to comment.