public AwsHttpConnection(AwsSettings awsSettings)
{
if (awsSettings == null) throw new ArgumentNullException("awsSettings");
if (string.IsNullOrWhiteSpace(awsSettings.Region)) throw new ArgumentException("awsSettings.Region is invalid.", "awsSettings");
_region = awsSettings.Region.ToLowerInvariant();
var key = GetAccessKey(awsSettings);
var secret = GetSecretKey(awsSettings);
if (!string.IsNullOrWhiteSpace(key) && !string.IsNullOrWhiteSpace(secret))
{
_credentials = new Credentials
{
AccessKey = key,
SecretKey = secret,
Token = awsSettings.Token
};
_authType = AuthType.AccessKey;
}
else
{
_authType = AuthType.InstanceProfile;
}
}