def _resolve_endpoint(self, request): if self._region_id: aliyunsdkcore.utils.validation.validate_pattern( self._region_id, 'region_id', '^[a-zA-Z0-9_-]+$' ) if request.product_suffix: aliyunsdkcore.utils.validation.validate_pattern( request.product_suffix, 'suffix', '^[a-zA-Z0-9_-]+$' ) if request.request_network: aliyunsdkcore.utils.validation.validate_pattern( request.request_network, 'network', '^[a-zA-Z0-9_-]+$' ) resolve_request = ResolveEndpointRequest( self._region_id, request.get_product(), request.get_location_service_code(), request.get_location_endpoint_type(), ) resolve_request.request_network = request.request_network resolve_request.product_suffix = request.product_suffix resolve_request.endpoint_map = request.endpoint_map resolve_request.endpoint_regional = request.endpoint_regional return self._endpoint_resolver.resolve(resolve_request)
def test_resolver_has_endpoint(self): resolver = EndpointResolverRules(None) request = ResolveEndpointRequest("cn-hangzhou", "product_code", "", "") endpoint_data = EndpointData() request.endpoint_map = endpoint_data.endpoint_map request.endpoint_regional = endpoint_data.endpoint_regional endpoint = resolver.resolve(request) self.assertEqual("mock.endpoint", endpoint)
def test_resolver_reginoal(self): resolver = EndpointResolverRules(None) endpoint_data = EndpointData() request = ResolveEndpointRequest("cn-beijing", "test", "", "") request.endpoint_map = endpoint_data.endpoint_map request.endpoint_regional = endpoint_data.endpoint_regional endpoint = resolver.resolve(request) self.assertEqual("test.cn-beijing.aliyuncs.com", endpoint)
def resolve(self, region_id, product_code, location_service_code=None, endpoint_type=None, request=None): resolve_request = ResolveEndpointRequest(region_id, product_code, location_service_code, endpoint_type) if request: resolve_request.request_network = request.request_network resolve_request.product_suffix = request.product_suffix resolve_request.endpoint_map = request.endpoint_map resolve_request.endpoint_regional = request.endpoint_regional return self._endpoint_resolver.resolve(resolve_request)
def test_resolver_network_special_endpoint(self): resolver = EndpointResolverRules(None) endpoint_data = EndpointData() request = ResolveEndpointRequest( "foo", "test", "", "") request.endpoint_map = endpoint_data.endpoint_map request.endpoint_regional = endpoint_data.endpoint_regional request.request_network = "vpc" endpoint = resolver.resolve(request) self.assertEqual("test-vpc.foo.aliyuncs.com", endpoint)
def _resolve_endpoint(self, request): resolve_request = ResolveEndpointRequest( self._region_id, request.get_product(), request.get_location_service_code(), request.get_location_endpoint_type(), ) resolve_request.request_network = request.request_network resolve_request.product_suffix = request.product_suffix resolve_request.endpoint_map = request.endpoint_map resolve_request.endpoint_regional = request.endpoint_regional return self._endpoint_resolver.resolve(resolve_request)