protected override IEnumerable <DiscoveryEndpointBase> EndpointOperation(EndpointOperationContextBase context) { EndpointOperationCallCount++; return(EndpointDiscoveryResolver.ResolveEndpoints(context, () => { FetchCallCount++; if (_failEndpointOperation) { return null; } var endpoints = new List <DiscoveryEndpointBase>(); endpoints.Add(new DiscoveryEndpoint(string.Format("https://test123.amazonaws.com/shared/{0}", context.OperationName), 5)); return endpoints; })); }
protected override IEnumerable <DiscoveryEndpointBase> EndpointOperation(EndpointOperationContextBase context) { EndpointOperationCallCount++; return(EndpointDiscoveryResolver.ResolveEndpoints(context, () => { FetchCallCount++; if (_failEndpointOperation) { return null; } var endpoints = new List <DiscoveryEndpointBase>(); endpoints.Add( new DiscoveryEndpoint(string.Format("{0}/{1}", _baseUrl, context.OperationName), 5)); return endpoints; })); }
protected AmazonServiceClient(AWSCredentials credentials, ClientConfig config) { if (config.DisableLogging) { _logger = Logger.EmptyLogger; } else { _logger = Logger.GetLogger(this.GetType()); } config.Validate(); this.Credentials = credentials; _config = config; Signer = CreateSigner(); EndpointDiscoveryResolver = new EndpointDiscoveryResolver(config, _logger); Initialize(); BuildRuntimePipeline(); }
protected override IEnumerable <DiscoveryEndpointBase> EndpointOperation(EndpointOperationContextBase context) { return(EndpointDiscoveryResolver.ResolveEndpoints(context, () => { var request = new DescribeEndpointsRequest { }; var response = DescribeEndpoints(request); if (response.HttpStatusCode != HttpStatusCode.OK || response.Endpoints == null) { return null; } var endpoints = new List <DiscoveryEndpointBase>(); foreach (var endpoint in response.Endpoints) { endpoints.Add(new DiscoveryEndpoint(endpoint.Address, endpoint.CachePeriodInMinutes)); } return endpoints; })); }
public IEnumerable <DiscoveryEndpointBase> CacheValue(string key) { return(EndpointDiscoveryResolver.GetDiscoveryEndpointsFromCache(key)); }