AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.
This interface is the read only access to the ClientConfig object used when setting up service clients. Once service clients are initiated the config object should not be changed to avoid issues with using a service client in a multi threaded environment.
public interface IClientConfig
The IClientConfig type exposes the following members
This flag controls if .NET HTTP infrastructure should follow redirection responses (e.g. HTTP 307 - temporary redirect).
Gets the AuthenticationRegion property. Used in AWS4 request signing, this is an optional property; change it only if the region cannot be determined from the service endpoint.
Gets the AuthenticationServiceName property. Used in AWS4 request signing, this is the short-form name of the service being called.
Gets the BufferSize property. The BufferSize controls the buffer used to read in from input streams and write out to the request.
Returns the calculated clock skew value for this config's service endpoint. If AWSConfigs.CorrectForClockSkew is false, this value won't be used to construct service requests.
Gets the connection limit set on the ServicePoint for the WebRequest. Default value is 50 connections unless ServicePointManager.DefaultConnectionLimit is set in which case ServicePointManager.DefaultConnectionLimit will be used as the default.
Returns the clock skew adjusted utc now. This value is affected by AWSConfigs.ManualClockCorrection
Returns the Amazon.Runtime.DefaultConfigurationMode that will be used. If none is specified, than the correct one is computed by Amazon.Runtime.Internal.IDefaultConfigurationProvider.
Gets the DisableHostPrefixInjection flag. If true, host prefix injection will be disabled for this client, the default value of this flag is false. Host prefix injection prefixes the service endpoint with request members from APIs which use this feature. Example: for a hostPrefix of "foo-name." and a endpoint of "service.region.amazonaws.com" the default behavior is to prefix the endpoint with the hostPrefix resulting in a final endpoint of "foo-name.service.region.amazonaws.com". Setting DisableHostPrefixInjection to true will disable hostPrefix injection resulting in a final endpoint of "service.region.amazonaws.com" regardless of the value of hostPrefix. E.g. You may want to disable host prefix injection for testing against a local mock endpoint.
Gets the DisableLogging. If true logging for this client will be disabled.
Returns the maximum number of discovered endpoints that can be stored within the cache for the client. The default limit is 1000 cache entries.
Returns the flag indicating if endpoint discovery should be enabled or disabled for operations that are not required to use endpoint discovery.
Under Adaptive retry mode, this flag determines if the client should wait for a send token to become available or don't block and fail the request immediately if a send token is not available.
Determines if MaxErrorRetry has been manually set.
Flag on whether to log metrics for service calls. This can be set in the application's configs, as below:
<?xml version="1.0" encoding="utf-8" ?> <configuration> <appSettings> <add key="AWSLogMetrics" value"true"/> </appSettings> </configuration>
Gets the LogResponse property. If this property is set to true, the service response is read in its entirety and logged.
Returns the flag indicating how many retry HTTP requests an SDK should make for a single SDK operation invocation before giving up. This flag will return 4 when the RetryMode is set to "Legacy" which is the default. For RetryMode values of "Standard" or "Adaptive" this flag will return 2. In addition to the values returned that are dependant on the RetryMode, the value can be set to a specific value by using the AWS_MAX_ATTEMPTS environment variable, max_attempts in the shared configuration file, or by setting a value directly on this property. When using AWS_MAX_ATTEMPTS or max_attempts the value returned from this property will be one less than the value entered because this flag is the number of retry requests, not total requests. To learn more about the RetryMode property that affects the values returned by this flag, see Amazon.Runtime.IClientConfig.RetryMode.
Gets the max idle time set on the ServicePoint for the WebRequest. Default value is 50 seconds (50,000 ms) unless ServicePointManager.MaxServicePointIdleTime is set, in which case ServicePointManager.MaxServicePointIdleTime will be used as the default.
Gets the interval at which progress update events are raised for upload operations. By default, the progress update events are raised at every 100KB of data transferred.
Credentials to use with a proxy.
Gets the ProxyHost property.
Gets the ProxyPort property.
Gets the ReadEntireResponse. If this property is set to true, the service response is read in its entirety before being processed.
Gets the default read-write timeout value.
Gets the RegionEndpoint property. The region constant to use that determines the endpoint to use. If this is not set then the client will fallback to the value of ServiceURL.
The constant used to lookup in the region hash the endpoint.
Flag on whether to resign requests on retry or not.
Returns the flag indicating the current mode in use for request retries and influences the value returned from Amazon.Runtime.IClientConfig.MaxErrorRetry. The default value is RequestRetryMode.Legacy. This flag can be configured by using the AWS_RETRY_MODE environment variable, retry_mode in the shared configuration file, or by setting this value directly.
Gets and sets of the ServiceURL property. This is an optional property if you need to set a specific service URL instead setting the region with the RegionEndpoint property.
Gets Service Version
Gets the signatureMethod property.
Gets the SignatureVersion property. Note: This property exists for backward compatibility but is no longer used by any service other than S3.
Gets the TCP keep-alive values to use for service requests. Enabling TCP keep-alive sends periodic TCP keep-alive probe packets, to prevent disconnection due to network inactivity. This is useful when you make API calls that take a long time to respond. In this case, the connection could be dropped by an intermediate node (e.g. proxy) as the connection is inactive for a long time. Timeout controls the duration of inactivity before a keep-alive probe packet is sent. Interval controls the amount of time to wait before retrying a keep-alive probe packet in the event the server doesn't respond to a keep-alive probe.
Configures a flag enabling to either opt in or opt out of the retry throttling service. Note: set value to true to enable retry throttling feature. The Default value for this flag is false.
Gets the default request timeout value.
When set to true, the service client will use the x-amz-user-agent header instead of the User-Agent header to report version and environment information to the AWS service. Note: This is especially useful when using a platform like WebAssembly which doesn't allow to specify the User-Agent header.
Configures the endpoint calculation for a service to go to a dual stack (ipv6 enabled) endpoint for the configured region.
Configures the endpoint calculation to go to a FIPS (https://aws.amazon.com/compliance/fips/) endpoint for the configured region.
Gets the UseHttp property. If this property is set to true, the client attempts to use HTTP protocol. By default, this property is set to false.
Gets whether the Nagle algorithm is used on connections managed by the ServicePoint object used for requests to AWS. This is defaulted to false for lower latency with responses that return small amount of data. This is the opposite default than ServicePoint.UseNagleAlgorithm which is optimized for large responses like web pages or images.
Gets the UserAgent property.
Using either the RegionEndpoint or the ServiceURL determine what the URL to the service is.
Returns a WebProxy instance configured to match the proxy settings in the client configuration.
Performs validation on this config object. Throws exception if any of the required values are missing/invalid.
.NET Core App:
Supported in: 3.1
Supported in: 2.0
Supported in: 4.5, 4.0, 3.5