All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.aol.micro.server.s3.S3ClientProvider Maven / Gradle / Ivy

There is a newer version: 0.91.11
Show newest version
package com.aol.micro.server.s3;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.auth.BasicSessionCredentials;
import com.amazonaws.regions.Region;
import com.amazonaws.regions.Regions;
import com.amazonaws.services.s3.AmazonS3Client;

@Configuration
public class S3ClientProvider {

	@Autowired
	private S3Configuration s3Configuration;

	@Bean
	public AmazonS3Client getClient() {

		AWSCredentials credentials;

		if (s3Configuration.getSessionToken() == null) {
			credentials = new BasicAWSCredentials(s3Configuration.getAccessKey(), s3Configuration.getSecretKey());
		} else {
			credentials = new BasicSessionCredentials(s3Configuration.getAccessKey(), s3Configuration.getSecretKey(),
					s3Configuration.getSessionToken());
		}
		
		AmazonS3Client amazonS3Client = new AmazonS3Client(credentials);
		
		if (s3Configuration.getRegion() != null) {
			Region region = Region.getRegion(Regions.fromName(s3Configuration.getRegion()));
			amazonS3Client.setRegion(region);		
		}

		return amazonS3Client;
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy