Documentation ¶
Overview ¶
* Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License.
Index ¶
- Constants
- func AddEndpointMapping(regionId, productId, endpoint string) (err error)
- func CheckCacheIsExpire(cacheKey string) bool
- func GetEndpointFromMap(regionId, productId string) string
- func Resolve(param *ResolveParam) (endpoint string, err error)
- type Cache
- type EndpointMapping
- type EndpointObj
- type EndpointsObj
- type GetEndpointResponse
- type LocalGlobalResolver
- type LocalRegionalResolver
- type LocationResolver
- type ResolveParam
- type Resolver
Constants ¶
const ( // EndpointCacheExpireTime ... EndpointCacheExpireTime = 3600 //Seconds )
const (
ResolveEndpointUserGuideLink = ""
)
Variables ¶
This section is empty.
Functions ¶
func AddEndpointMapping ¶
AddEndpointMapping use productId and regionId as key to store the endpoint into inner map when using the same productId and regionId as key, the endpoint will be covered.
func GetEndpointFromMap ¶
GetEndpointFromMap use Product and RegionId as key to find endpoint from inner map
func Resolve ¶
func Resolve(param *ResolveParam) (endpoint string, err error)
Resolve resolve endpoint with params It will resolve with each supported resolver until anyone resolved
Types ¶
type EndpointMapping ¶
type EndpointObj ¶
type EndpointObj struct { // Protocols map[string]string Type string Namespace string Id string SerivceCode string Endpoint string }
EndpointObj ...
type GetEndpointResponse ¶
type GetEndpointResponse struct { Endpoints *EndpointsObj RequestId string Success bool }
GetEndpointResponse ...
type LocalGlobalResolver ¶
type LocalGlobalResolver struct { }
func (*LocalGlobalResolver) GetName ¶
func (resolver *LocalGlobalResolver) GetName() (name string)
func (*LocalGlobalResolver) TryResolve ¶
func (resolver *LocalGlobalResolver) TryResolve(param *ResolveParam) (endpoint string, support bool, err error)
type LocalRegionalResolver ¶
type LocalRegionalResolver struct { }
func (*LocalRegionalResolver) GetName ¶
func (resolver *LocalRegionalResolver) GetName() (name string)
func (*LocalRegionalResolver) TryResolve ¶
func (resolver *LocalRegionalResolver) TryResolve(param *ResolveParam) (endpoint string, support bool, err error)
type LocationResolver ¶
type LocationResolver struct { }
LocationResolver ...
func (*LocationResolver) GetName ¶
func (resolver *LocationResolver) GetName() (name string)
func (*LocationResolver) TryResolve ¶
func (resolver *LocationResolver) TryResolve(param *ResolveParam) (endpoint string, support bool, err error)
TryResolve resolves endpoint giving product and region
type ResolveParam ¶
type ResolveParam struct { Domain string Product string RegionId string LocationProduct string LocationEndpointType string CommonApi func(request *requests.CommonRequest) (response *responses.CommonResponse, err error) `json:"-"` }
func (*ResolveParam) String ¶
func (param *ResolveParam) String() string