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 class is the base class of all the configurations settings to connect to a service.
public abstract class ClientConfig IClientConfig
The ClientConfig type exposes the following members
This flag controls if .NET HTTP infrastructure should follow redirection responses (e.g. HTTP 307 - temporary redirect).
Gets and sets 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 and sets the AuthenticationServiceName property. Used in AWS4 request signing, this is the short-form name of the service being called.
Gets and Sets the BufferSize property. The BufferSize controls the buffer used to read in from input streams and write out to the request.
The calculated clock skew correction for a specific endpoint, if there is one.
This field will be set if a service call resulted in an exception
and the SDK has determined that there is a difference between local
and server times.
Gets and sets 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 current UTC now after clock correction for this endpoint.
Gets and sets 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 and sets 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.
Flag on whether to log metrics for service calls. This can be set in the application's configs, as below:
Gets and sets the LogResponse property. If this property is set to true, the service response is logged. The size of response being logged is controlled by the AWSConfigs.LoggingConfig.LogResponsesSizeLimit property.
Gets and sets of the MaxErrorRetry property.
Gets and sets 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 or sets 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.
If the value of this property is set less than ClientConfig.BufferSize, progress updates events will be raised at the interval specified by ClientConfig.BufferSize.
Gets and sets the ProxyBypassList property; a collection of regular expressions denoting the set of endpoints for which the configured proxy host will be bypassed.
Gets and sets the ProxyBypassOnLocal property. If set true requests to local addresses bypass the configured proxy.
Credentials to use with a proxy.
Gets and sets of the ProxyHost property.
Gets and sets the ProxyPort property.
Gets and sets the ReadEntireResponse property. NOTE: This property does not effect response processing and is deprecated. To enable response logging, the ClientConfig.LogResponse and AWSConfigs.LoggingConfig properties can be used.
Overrides the default read-write timeout value. On Unity platform, this value is not used as Unity HTTP client does not support timeouts, so
Gets and sets the RegionEndpoint property. The region constant that determines the endpoint to use. Setting this property to null will force the SDK to recalculate the RegionEndpoint value based on App/WebConfig, environment variables, profile, etc.
The constant used to lookup in the region hash the endpoint.
Flag on whether to resign requests on retry or not. For Amazon S3 and Amazon Glacier this value will always be set to true.
Gets and sets of the ServiceURL property. This is an optional property; change it only if you want to try a different service endpoint.
Gets Service Version
Gets and sets of the signatureMethod property.
Gets and sets of the SignatureVersion property. Note: This property exists for backward compatibility but is no longer used by any service other than S3.
Specifies the TCP keep-alive values to use for service requests.
Enable or disable the Retry Throttling feature by setting the ThrottleRetries flag to True/False resepctively. Retry Throttling is a feature that intelligently throttles retry attempts when a large precentage of requests are failing and retries are unsuccessful as well. In such situations the allotted retry capacity for the service URL will be drained until requests start to succeed again. Once the requisite capacity is available, retries would be permitted again. When retries are throttled, the service enters a fail-fast behaviour as the traditional retry attempt for the request would be circumvented. Hence, errors will resurface quickly. This will result in a greated number of exceptions but prevents requests being tied up in unsuccessful retry attempts. Note: Retry Throttling is enabled by default. Set the ThrottleRetries flag to false to switch off this feature.
Configures the endpoint calculation for a service to go to a dual stack (ipv6 enabled) endpoint for the configured region.
Gets and sets the UseHttp. If this property is set to true, the client attempts to use HTTP protocol, if the target endpoint supports it. By default, this property is set to false.
Gets or sets a Boolean value that determines 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 and sets of the UserAgent property.
Given this client configuration, return a string form ofthe service endpoint url.
Returns the request timeout value if its value is set, else returns client timeout value.
Returns a WebProxy instance configured to match the proxy settings in the client configuration.
Enable or disable the Nagle algorithm on the underlying http client. This method is not intended to be called by consumers of the AWS SDK for .NET
Unpacks the host, port and any credentials info into the instance's proxy-related fields.
Performs validation on this config object. Throws exception if any of the required values are missing/invalid.
Throw an exception if the boxed TimeSpan parameter doesn't have a value or is out of range.
Supported in: 1.3
Supported in: 4.5, 4.0, 3.5
Portable Class Library:
Supported in: Windows Store Apps
Supported in: Windows Phone 8.1
Supported in: Xamarin Android
Supported in: Xamarin iOS (Unified)
Supported in: Xamarin.Forms
Supported Versions: 4.6 and above
Supported Platforms: Android, iOS, Standalone