diff options
author | Jesse Morgan <jesse@jesterpm.net> | 2017-09-04 10:05:38 -0700 |
---|---|---|
committer | Jesse Morgan <jesse@jesterpm.net> | 2017-09-04 10:05:38 -0700 |
commit | cbf149af1f07bb98c1f856948a79dcf3fb0c43b3 (patch) | |
tree | 7901334e10e181ba2c79c09b3a9a32f16c1abc42 /src/main/java/com/p4square/grow/config/ConfigCredentialProvider.java | |
parent | 72ee0f10ddca0d880e50d13446f9ac0269e542eb (diff) |
SESNotificationService to accept multiple destinations.20170904
notificationEmail is now a comma separated list of addresses.
Adding unit tests for SESNotificationService.
Refactored AWS credential selection into ConfigCredentialProvider.
Diffstat (limited to 'src/main/java/com/p4square/grow/config/ConfigCredentialProvider.java')
-rw-r--r-- | src/main/java/com/p4square/grow/config/ConfigCredentialProvider.java | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/src/main/java/com/p4square/grow/config/ConfigCredentialProvider.java b/src/main/java/com/p4square/grow/config/ConfigCredentialProvider.java new file mode 100644 index 0000000..06abd48 --- /dev/null +++ b/src/main/java/com/p4square/grow/config/ConfigCredentialProvider.java @@ -0,0 +1,43 @@ +package com.p4square.grow.config; + +import com.amazonaws.auth.AWSCredentials; +import com.amazonaws.auth.DefaultAWSCredentialsProviderChain; + +/** + * AWSCredentials credentials backed by config. + * + * Falls back to DefaultAWSCredentialsProviderChain if the credentials are not in the config. + */ +public class ConfigCredentialProvider implements AWSCredentials { + + private AWSCredentials mCredentials; + + public ConfigCredentialProvider(final Config config) { + String awsAccessKey = config.getString("awsAccessKey"); + if (awsAccessKey != null) { + mCredentials = new AWSCredentials() { + @Override + public String getAWSAccessKeyId() { + return config.getString("awsAccessKey"); + } + + @Override + public String getAWSSecretKey() { + return config.getString("awsSecretKey"); + } + }; + } else { + mCredentials = new DefaultAWSCredentialsProviderChain().getCredentials(); + } + } + + @Override + public String getAWSAccessKeyId() { + return mCredentials.getAWSAccessKeyId(); + } + + @Override + public String getAWSSecretKey() { + return mCredentials.getAWSSecretKey(); + } +} |