in src/main/java/com/amazonaws/kinesisvideo/java/service/JavaKinesisVideoServiceClient.java [153:217]
private static AWSCredentialsProvider createAwsCredentialsProvider(
@Nullable final KinesisVideoCredentialsProvider credentialsProvider,
@Nonnull final Log log)
throws KinesisVideoException {
if (null == credentialsProvider) {
return null;
}
return new AWSCredentialsProvider() {
@Override
public AWSCredentials getCredentials() {
AWSCredentials awsCredentials = null;
try {
final KinesisVideoCredentials kinesisVideoCredentials = credentialsProvider.getCredentials();
if (kinesisVideoCredentials.getSessionToken() == null) {
awsCredentials = new AWSCredentials() {
@Override
public String getAWSAccessKeyId() {
return kinesisVideoCredentials.getAccessKey();
}
@Override
public String getAWSSecretKey() {
return kinesisVideoCredentials.getSecretKey();
}
};
} else {
awsCredentials = new AWSSessionCredentials() {
@Override
public String getSessionToken() {
return kinesisVideoCredentials.getSessionToken();
}
@Override
public String getAWSAccessKeyId() {
return kinesisVideoCredentials.getAccessKey();
}
@Override
public String getAWSSecretKey() {
return kinesisVideoCredentials.getSecretKey();
}
};
}
} catch (final KinesisVideoException e) {
log.exception(e, "Getting credentials threw an exception.");
awsCredentials = null;
}
return awsCredentials;
}
@Override
public void refresh() {
try {
credentialsProvider.getUpdatedCredentials();
} catch (final KinesisVideoException e) {
// Do nothing
log.exception(e, "Refreshing credentials threw and exception.");
}
}
};
}