Skip to content

Commit e000546

Browse files
committed
switch implementation to use return value
1 parent 0180ca7 commit e000546

File tree

16 files changed

+58
-204
lines changed

16 files changed

+58
-204
lines changed

generated/src/aws-cpp-sdk-s3-crt/include/aws/s3-crt/S3ExpressSigner.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,6 @@ namespace Aws {
4343

4444
Aws::Auth::AWSCredentials GetCredentials(const std::shared_ptr<Aws::Http::ServiceSpecificParameters> &serviceSpecificParameters) const override;
4545

46-
Aws::Auth::AWSCredentials GetCredentials(Aws::Auth::CredentialsResolutionContext& context, const std::shared_ptr<Aws::Http::ServiceSpecificParameters> &serviceSpecificParameters) const override;
47-
4846
protected:
4947
bool ServiceRequireUnsignedPayload(const String &serviceName) const override;
5048

generated/src/aws-cpp-sdk-s3-crt/source/S3ExpressSigner.cpp

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -95,8 +95,3 @@ Aws::Auth::AWSCredentials S3ExpressSigner::GetCredentials(const std::shared_ptr<
9595
auto identity = m_S3ExpressIdentityProvider->GetS3ExpressIdentity(serviceSpecificParameters);
9696
return {identity.getAccessKeyId(), identity.getSecretKeyId()};
9797
}
98-
99-
Aws::Auth::AWSCredentials S3ExpressSigner::GetCredentials(Aws::Auth::CredentialsResolutionContext& context, const std::shared_ptr<Aws::Http::ServiceSpecificParameters> &serviceSpecificParameters) const {
100-
auto identity = m_S3ExpressIdentityProvider->GetS3ExpressIdentity(context, serviceSpecificParameters);
101-
return {identity.getAccessKeyId(), identity.getSecretKeyId()};
102-
}

generated/src/aws-cpp-sdk-s3/include/aws/s3/S3ExpressSigner.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,6 @@ namespace Aws {
4343

4444
Aws::Auth::AWSCredentials GetCredentials(const std::shared_ptr<Aws::Http::ServiceSpecificParameters> &serviceSpecificParameters) const override;
4545

46-
Aws::Auth::AWSCredentials GetCredentials(Aws::Auth::CredentialsResolutionContext& context, const std::shared_ptr<Aws::Http::ServiceSpecificParameters> &serviceSpecificParameters) const override;
47-
4846
protected:
4947
bool ServiceRequireUnsignedPayload(const String &serviceName) const override;
5048

generated/src/aws-cpp-sdk-s3/source/S3ExpressSigner.cpp

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -95,8 +95,3 @@ Aws::Auth::AWSCredentials S3ExpressSigner::GetCredentials(const std::shared_ptr<
9595
auto identity = m_S3ExpressIdentityProvider->GetS3ExpressIdentity(serviceSpecificParameters);
9696
return {identity.getAccessKeyId(), identity.getSecretKeyId()};
9797
}
98-
99-
Aws::Auth::AWSCredentials S3ExpressSigner::GetCredentials(Aws::Auth::CredentialsResolutionContext& context, const std::shared_ptr<Aws::Http::ServiceSpecificParameters> &serviceSpecificParameters) const {
100-
auto identity = m_S3ExpressIdentityProvider->GetS3ExpressIdentity(context, serviceSpecificParameters);
101-
return {identity.getAccessKeyId(), identity.getSecretKeyId()};
102-
}

src/aws-cpp-sdk-core/include/aws/core/auth/AWSCredentials.h

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,42 @@
66
#pragma once
77

88
#include <aws/core/Core_EXPORTS.h>
9+
#include <aws/core/client/UserAgent.h>
910
#include <aws/core/utils/memory/stl/AWSString.h>
1011
#include <aws/core/utils/DateTime.h>
1112
namespace Aws
1213
{
1314
namespace Auth
1415
{
16+
/**
17+
* Context class for credential resolution that tracks features used during credential retrieval.
18+
*/
19+
class AWS_CORE_API CredentialsResolutionContext
20+
{
21+
public:
22+
// Default constructor - no features tracked
23+
CredentialsResolutionContext() = default;
24+
25+
/**
26+
* Add a user agent feature to track credential usage.
27+
*/
28+
void AddUserAgentFeature(Aws::Client::UserAgentFeature feature)
29+
{
30+
m_features.insert(feature);
31+
}
32+
33+
/**
34+
* Get all tracked credential features.
35+
*/
36+
const Aws::Set<Aws::Client::UserAgentFeature>& GetUserAgentFeatures() const
37+
{
38+
return m_features;
39+
}
40+
41+
private:
42+
Aws::Set<Aws::Client::UserAgentFeature> m_features;
43+
};
44+
1545
/**
1646
* Simple data object around aws credentials
1747
*/
@@ -214,12 +244,24 @@ namespace Aws
214244
m_expiration = expiration;
215245
}
216246

247+
/**
248+
* Gets credential resolution context. this is information about the call
249+
* such as what credentials provider was used to to resolve the credentials
250+
*/
251+
inline CredentialsResolutionContext GetContext() { return m_context; }
252+
253+
/**
254+
* Adds a user agent feature used during credentials resolution to the credentials
255+
* context. This is useful to track which credentials provider was used.
256+
*/
257+
inline void AddUserAgentFeatire(Aws::Client::UserAgentFeature feature) { m_context.AddUserAgentFeature(feature); }
217258
private:
218259
Aws::String m_accessKeyId;
219260
Aws::String m_secretKey;
220261
Aws::String m_sessionToken;
221262
Aws::Utils::DateTime m_expiration;
222263
Aws::String m_accountId;
264+
CredentialsResolutionContext m_context;
223265
};
224266
}
225267
}

src/aws-cpp-sdk-core/include/aws/core/auth/AWSCredentialsProvider.h

Lines changed: 0 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
#include <aws/core/auth/AWSCredentials.h>
1919
#include <aws/core/config/AWSProfileConfigLoader.h>
2020
#include <aws/core/client/RetryStrategy.h>
21-
#include <aws/core/client/UserAgent.h>
2221
#include <aws/core/utils/memory/stl/AWSSet.h>
2322
#include <memory>
2423

@@ -30,34 +29,6 @@ namespace Aws
3029
}
3130
namespace Auth
3231
{
33-
/**
34-
* Context class for credential resolution that tracks features used during credential retrieval.
35-
*/
36-
class AWS_CORE_API CredentialsResolutionContext
37-
{
38-
public:
39-
// Default constructor - no features tracked
40-
CredentialsResolutionContext() = default;
41-
42-
/**
43-
* Add a user agent feature to track credential usage.
44-
*/
45-
void AddUserAgentFeature(Aws::Client::UserAgentFeature feature)
46-
{
47-
m_features.insert(feature);
48-
}
49-
50-
/**
51-
* Get all tracked credential features.
52-
*/
53-
const Aws::Set<Aws::Client::UserAgentFeature>& GetUserAgentFeatures() const
54-
{
55-
return m_features;
56-
}
57-
58-
private:
59-
Aws::Set<Aws::Client::UserAgentFeature> m_features;
60-
};
6132
constexpr int REFRESH_THRESHOLD = 1000 * 60 * 5;
6233

6334
constexpr int AWS_CREDENTIAL_PROVIDER_EXPIRATION_GRACE_PERIOD = 5 * 1000;
@@ -102,14 +73,6 @@ namespace Aws
10273
* The core of the credential provider interface. Override this method to control how credentials are retrieved.
10374
*/
10475
virtual AWSCredentials GetAWSCredentials() = 0;
105-
106-
/**
107-
* Interface that allows providers to populate context during credential retrieval.
108-
*/
109-
virtual AWSCredentials GetAWSCredentials(CredentialsResolutionContext& context) {
110-
AWS_UNREFERENCED_PARAM(context);
111-
return GetAWSCredentials();
112-
}
11376

11477
protected:
11578
/**
@@ -182,11 +145,6 @@ namespace Aws
182145
* are not found, empty credentials are returned. Credentials are not cached.
183146
*/
184147
AWSCredentials GetAWSCredentials() override;
185-
186-
/**
187-
* Context-based interface that adds environment credential tracking.
188-
*/
189-
AWSCredentials GetAWSCredentials(CredentialsResolutionContext& context) override;
190148
};
191149

192150
/**

src/aws-cpp-sdk-core/include/aws/core/auth/AWSCredentialsProviderChain.h

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -29,13 +29,6 @@ namespace Aws
2929
*/
3030
virtual AWSCredentials GetAWSCredentials();
3131

32-
/**
33-
* When a credentials provider in the chain returns empty credentials,
34-
* We go on to the next provider until we have either exhausted the installed providers in the chain or something returns non-empty credentials.
35-
* This overload populates the context with credential tracking information.
36-
*/
37-
virtual AWSCredentials GetAWSCredentials(CredentialsResolutionContext& context);
38-
3932
/**
4033
* Gets all providers stored in this chain.
4134
*/

src/aws-cpp-sdk-core/include/aws/core/auth/signer/AWSAuthV4Signer.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -184,8 +184,6 @@ namespace Aws
184184

185185
virtual Aws::Auth::AWSCredentials GetCredentials(const std::shared_ptr<Aws::Http::ServiceSpecificParameters> &serviceSpecificParameters) const;
186186

187-
virtual Aws::Auth::AWSCredentials GetCredentials(Aws::Auth::CredentialsResolutionContext& context, const std::shared_ptr<Aws::Http::ServiceSpecificParameters> &serviceSpecificParameters) const;
188-
189187
Aws::String GetServiceName() const { return m_serviceName; }
190188
Aws::String GetRegion() const { return m_region; }
191189
Aws::String GenerateSignature(const Aws::Auth::AWSCredentials& credentials,

src/aws-cpp-sdk-core/include/aws/core/client/UserAgent.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@ enum class UserAgentFeature {
3232
ACCOUNT_ID_MODE_REQUIRED,
3333
RESOLVED_ACCOUNT_ID,
3434
GZIP_REQUEST_COMPRESSION,
35-
CREDENTIALS_SIGV4_SIGNER,
3635
CREDENTIALS_ENV_VARS,
3736
};
3837

src/aws-cpp-sdk-core/source/auth/AWSCredentialsProvider.cpp

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -103,16 +103,11 @@ AWSCredentials EnvironmentAWSCredentialsProvider::GetAWSCredentials()
103103
AWS_LOGSTREAM_DEBUG(ENVIRONMENT_LOG_TAG, "Found accountId");
104104
}
105105
}
106-
107-
return credentials;
108-
}
109106

110-
AWSCredentials EnvironmentAWSCredentialsProvider::GetAWSCredentials(CredentialsResolutionContext& context)
111-
{
112-
AWSCredentials credentials = GetAWSCredentials();
113107
if (!credentials.IsEmpty()) {
114-
context.AddUserAgentFeature(Aws::Client::UserAgentFeature::CREDENTIALS_ENV_VARS);
108+
credentials.AddUserAgentFeatire(UserAgentFeature::CREDENTIALS_ENV_VARS);
115109
}
110+
116111
return credentials;
117112
}
118113

0 commit comments

Comments
 (0)