Skip to content

Commit e197b6d

Browse files
remove nullish assignment, add error cause and rename variables
1 parent 68474dd commit e197b6d

File tree

3 files changed

+15
-15
lines changed

3 files changed

+15
-15
lines changed

src/cmap/auth/aws_temporary_credentials.ts

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -28,14 +28,14 @@ export interface AWSTempCredentials {
2828
*/
2929
export abstract class AWSTemporaryCredentialProvider {
3030
abstract getCredentials(): Promise<AWSTempCredentials>;
31-
private static _credentialProvider: ReturnType<typeof getAwsCredentialProvider>;
32-
protected static get credentialProvider() {
33-
AWSTemporaryCredentialProvider._credentialProvider ??= getAwsCredentialProvider();
34-
return AWSTemporaryCredentialProvider._credentialProvider;
31+
private static _awsSDK: ReturnType<typeof getAwsCredentialProvider>;
32+
protected static get awsSDK() {
33+
AWSTemporaryCredentialProvider._awsSDK ??= getAwsCredentialProvider();
34+
return AWSTemporaryCredentialProvider._awsSDK;
3535
}
3636

3737
static get isAWSSDKInstalled(): boolean {
38-
return !('kModuleError' in AWSTemporaryCredentialProvider.credentialProvider);
38+
return !('kModuleError' in AWSTemporaryCredentialProvider.awsSDK);
3939
}
4040
}
4141

@@ -47,8 +47,8 @@ export class AWSSDKCredentialProvider extends AWSTemporaryCredentialProvider {
4747
* To ensure this occurs, we need to cache the `provider` returned by the AWS sdk and re-use it when fetching credentials.
4848
*/
4949
private get provider(): () => Promise<AWSCredentials> {
50-
if ('kModuleError' in AWSTemporaryCredentialProvider.credentialProvider) {
51-
throw AWSTemporaryCredentialProvider.credentialProvider.kModuleError;
50+
if ('kModuleError' in AWSTemporaryCredentialProvider.awsSDK) {
51+
throw AWSTemporaryCredentialProvider.awsSDK.kModuleError;
5252
}
5353
if (this._provider) {
5454
return this._provider;
@@ -94,12 +94,12 @@ export class AWSSDKCredentialProvider extends AWSTemporaryCredentialProvider {
9494
AWS_STS_REGIONAL_ENDPOINTS === 'regional' ||
9595
(AWS_STS_REGIONAL_ENDPOINTS === 'legacy' && !LEGACY_REGIONS.has(AWS_REGION));
9696

97-
this._provider ??=
97+
this._provider =
9898
awsRegionSettingsExist && useRegionalSts
99-
? AWSTemporaryCredentialProvider.credentialProvider.fromNodeProviderChain({
99+
? AWSTemporaryCredentialProvider.awsSDK.fromNodeProviderChain({
100100
clientConfig: { region: AWS_REGION }
101101
})
102-
: AWSTemporaryCredentialProvider.credentialProvider.fromNodeProviderChain();
102+
: AWSTemporaryCredentialProvider.awsSDK.fromNodeProviderChain();
103103

104104
return this._provider;
105105
}
@@ -124,7 +124,7 @@ export class AWSSDKCredentialProvider extends AWSTemporaryCredentialProvider {
124124
Expiration: creds.expiration
125125
};
126126
} catch (error) {
127-
throw new MongoAWSError(error.message);
127+
throw new MongoAWSError(error.message, { cause: error });
128128
}
129129
}
130130
}

src/error.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -520,8 +520,8 @@ export class MongoAWSError extends MongoRuntimeError {
520520
*
521521
* @public
522522
**/
523-
constructor(message: string) {
524-
super(message);
523+
constructor(message: string, { cause }: { cause?: AnyError } = {}) {
524+
super(message, { cause });
525525
}
526526

527527
override get name(): string {

test/integration/auth/mongodb_aws.test.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -270,7 +270,7 @@ describe('MONGODB-AWS', function () {
270270
numberOfFromNodeProviderChainCalls = 0;
271271

272272
// @ts-expect-error We intentionally access a protected variable.
273-
AWSTemporaryCredentialProvider._credentialProvider = {
273+
AWSTemporaryCredentialProvider._awsSDK = {
274274
fromNodeProviderChain(...args) {
275275
calledArguments = args;
276276
numberOfFromNodeProviderChainCalls += 1;
@@ -292,7 +292,7 @@ describe('MONGODB-AWS', function () {
292292
process.env.AWS_REGION = storedEnv.AWS_REGION;
293293
}
294294
// @ts-expect-error We intentionally access a protected variable.
295-
AWSTemporaryCredentialProvider._credentialProvider = credentialProvider;
295+
AWSTemporaryCredentialProvider._awsSDK = credentialProvider;
296296
calledArguments = [];
297297
});
298298

0 commit comments

Comments
 (0)