huaweicloud-sdk-python-v3/huaweicloud-sdk-aad/huaweicloudsdkaad/v1/region/aad_region.py

35 lines
1.1 KiB
Python
Raw Normal View History

2023-11-16 09:47:10 +00:00
# coding: utf-8
from huaweicloudsdkcore.region.region import Region
from huaweicloudsdkcore.region.provider import RegionProviderChain
class AadRegion:
_PROVIDER = RegionProviderChain.get_default_region_provider_chain("AAD")
CN_NORTH_4 = Region("cn-north-4",
"https://aad.myhuaweicloud.com")
2024-01-25 08:47:44 +00:00
AP_SOUTHEAST_1 = Region("ap-southeast-1",
"https://aad.myhuaweicloud.com")
2023-11-16 09:47:10 +00:00
static_fields = {
"cn-north-4": CN_NORTH_4,
2024-01-25 08:47:44 +00:00
"ap-southeast-1": AP_SOUTHEAST_1,
2023-11-16 09:47:10 +00:00
}
@classmethod
def value_of(cls, region_id, static_fields=None):
if not region_id:
2024-01-18 09:04:41 +00:00
raise KeyError("Unexpected empty parameter: region_id")
2023-11-16 09:47:10 +00:00
2024-01-18 09:04:41 +00:00
fields = static_fields or cls.static_fields
2023-11-16 09:47:10 +00:00
region = cls._PROVIDER.get_region(region_id)
if region:
return region
if region_id in fields:
return fields.get(region_id)
2024-01-18 09:04:41 +00:00
raise KeyError("region_id '%s' is not in the following supported regions of service 'Aad': [%s]" % (
region_id, ", ".join(sorted(fields.keys()))))