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 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 _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)
def test_resolver(self): # clinet = Mock() resolver = DefaultEndpointResolver(None) # can not be resolved request = ResolveEndpointRequest("mars", "ecs", "", "") request.product_suffix = 'api' with self.assertRaises(ClientException) as ex: resolver.resolve(request) self.assertEqual(ex.exception.error_code, "SDK.EndpointResolvingError") self.assertEqual( ex.exception.message, "No such region 'mars'. Please check your region ID.") resolver.put_endpoint_entry("mars", "ecs", "mars-endpoint-for-ecs") self.assertEqual(resolver.resolve(request), "mars-endpoint-for-ecs")