List of usage examples for com.amazonaws.services.s3.model Region US_Standard
Region US_Standard
To view the source code for com.amazonaws.services.s3.model Region US_Standard.
Click Source Link
From source file:com.amazon.services.awsrum.utils.S3Utils.java
License:Open Source License
/** * Create a S3 bucket if it does not exist. * //from w ww. ja va 2 s. c om * @param client * The {@link AmazonS3Client} with read and write permissions * @param bucketName * The bucket to create * @throws IllegalStateException * The bucket is not created before timeout occurs */ public static void createBucket(AmazonS3Client client, String bucketName) { if (!bucketExists(client, bucketName)) { CreateBucketRequest createBucketRequest = new CreateBucketRequest(bucketName); createBucketRequest.setRegion(Region.US_Standard.toString()); client.createBucket(createBucketRequest); } long startTime = System.currentTimeMillis(); long endTime = startTime + 60 * 1000; while (!bucketExists(client, bucketName) && endTime > System.currentTimeMillis()) { try { LOG.info("Waiting for S3 to create bucket " + bucketName); Thread.sleep(1000 * 10); } catch (InterruptedException e) { } } if (!bucketExists(client, bucketName)) { throw new IllegalStateException("Could not create bucket " + bucketName); } LOG.info("Created S3 bucket " + bucketName); }
From source file:com.emc.vipr.services.s3.ViPRS3Client.java
License:Open Source License
/** * ViPR-specific create bucket command. This version of the command adds some * options specific to EMC ViPR, specifically the ability to set the ViPR project ID * and Object Virtual Pool ID on the new bucket. * @param createBucketRequest the configuration parameters for the new bucket. *//*from w w w . j a v a 2 s.c o m*/ public Bucket createBucket(ViPRCreateBucketRequest createBucketRequest) throws AmazonClientException, AmazonServiceException { assertParameterNotNull(createBucketRequest, "The CreateBucketRequest parameter must be specified when creating a bucket"); String bucketName = createBucketRequest.getBucketName(); String region = createBucketRequest.getRegion(); assertParameterNotNull(bucketName, "The bucket name parameter must be specified when creating a bucket"); if (bucketName != null) bucketName = bucketName.trim(); BucketNameUtils.validateBucketName(bucketName); Request<ViPRCreateBucketRequest> request = createRequest(bucketName, null, createBucketRequest, HttpMethodName.PUT); if (createBucketRequest.getAccessControlList() != null) { addAclHeaders(request, createBucketRequest.getAccessControlList()); } else if (createBucketRequest.getCannedAcl() != null) { request.addHeader(Headers.S3_CANNED_ACL, createBucketRequest.getCannedAcl().toString()); } // ViPR specific: projectId, vpoolId and fsAccessEnabled. if (createBucketRequest.getProjectId() != null) { request.addHeader(ViPRConstants.PROJECT_HEADER, createBucketRequest.getProjectId()); } if (createBucketRequest.getVpoolId() != null) { request.addHeader(ViPRConstants.VPOOL_HEADER, createBucketRequest.getVpoolId()); } if (createBucketRequest.isFsAccessEnabled()) { request.addHeader(ViPRConstants.FS_ACCESS_ENABLED, "true"); } /* * If we're talking to a region-specific endpoint other than the US, we * *must* specify a location constraint. Try to derive the region from * the endpoint. */ if (!(this.endpoint.getHost().equals(Constants.S3_HOSTNAME)) && (region == null || region.isEmpty())) { try { region = RegionUtils.getRegionByEndpoint(this.endpoint.getHost()).getName(); } catch (IllegalArgumentException exception) { // Endpoint does not correspond to a known region; send the // request with no location constraint and hope for the best. } } /* * We can only send the CreateBucketConfiguration if we're *not* * creating a bucket in the US region. */ if (region != null && !region.toUpperCase().equals(Region.US_Standard.toString())) { XmlWriter xml = new XmlWriter(); xml.start("CreateBucketConfiguration", "xmlns", Constants.XML_NAMESPACE); xml.start("LocationConstraint").value(region).end(); xml.end(); request.setContent(new ByteArrayInputStream(xml.getBytes())); } invoke(request, voidResponseHandler, bucketName, null); return new Bucket(bucketName); }
From source file:com.example.utils.S3Utils.java
License:Open Source License
/** * Create an Amazon S3 bucket if it does not exist. * /*from w w w .j a va 2 s.c om*/ * @param client * The {@link AmazonS3Client} with read and write permissions * @param bucketName * The bucket to create * @throws IllegalStateException * The bucket is not created before timeout occurs */ public static void createBucket(AmazonS3Client client, String bucketName) { if (!bucketExists(client, bucketName)) { CreateBucketRequest createBucketRequest = new CreateBucketRequest(bucketName); createBucketRequest.setRegion(Region.US_Standard.toString()); client.createBucket(createBucketRequest); } long startTime = System.currentTimeMillis(); long endTime = startTime + 60 * 1000; while (!bucketExists(client, bucketName) && endTime > System.currentTimeMillis()) { try { LOG.info("Waiting for Amazon S3 to create bucket " + bucketName); Thread.sleep(1000 * 10); } catch (InterruptedException e) { } } if (!bucketExists(client, bucketName)) { throw new IllegalStateException("Could not create bucket " + bucketName); } LOG.info("Created Amazon S3 bucket " + bucketName); }
From source file:com.indeed.imhotep.iql.cache.S3QueryCache.java
License:Apache License
public S3QueryCache(PropertyResolver props) { String awsRegion;/*from w w w .j av a2 s .c o m*/ enabled = true; try { bucket = props.getProperty("query.cache.s3.bucket", String.class); client = new AmazonS3Client(); boolean exists = client.doesBucketExist(bucket); if (!exists) { awsRegion = props.getProperty("aws.s3.region", String.class, Region.US_Standard.toString()); client.createBucket(bucket, awsRegion); } } catch (Exception e) { log.info("Failed to initialize the S3 client. Caching disabled.", e); enabled = false; } }
From source file:org.apache.jackrabbit.aws.ext.ds.S3Backend.java
License:Apache License
public void init(CachingDataStore store, String homeDir, Properties prop) throws DataStoreException { ClassLoader contextClassLoader = Thread.currentThread().getContextClassLoader(); try {//from ww w . ja v a 2 s . co m startTime = new Date(); Thread.currentThread().setContextClassLoader(getClass().getClassLoader()); LOG.debug("init"); this.store = store; s3service = Utils.openService(prop); if (bucket == null || "".equals(bucket.trim())) { bucket = prop.getProperty(S3Constants.S3_BUCKET); } String region = prop.getProperty(S3Constants.S3_REGION); String endpoint = null; if (!s3service.doesBucketExist(bucket)) { if (DEFAULT_AWS_BUCKET_REGION.equals(region)) { s3service.createBucket(bucket, Region.US_Standard); endpoint = S3 + DOT + AWSDOTCOM; } else if (Region.EU_Ireland.toString().equals(region)) { s3service.createBucket(bucket, Region.EU_Ireland); endpoint = "s3-eu-west-1" + DOT + AWSDOTCOM; } else { s3service.createBucket(bucket, region); endpoint = S3 + DASH + region + DOT + AWSDOTCOM; } LOG.info("Created bucket [{}] in [{}] ", bucket, region); } else { LOG.info("Using bucket [{}]", bucket); if (DEFAULT_AWS_BUCKET_REGION.equals(region)) { endpoint = S3 + DOT + AWSDOTCOM; } else if (Region.EU_Ireland.toString().equals(region)) { endpoint = "s3-eu-west-1" + DOT + AWSDOTCOM; } else { endpoint = S3 + DASH + region + DOT + AWSDOTCOM; } } String propEndPoint = prop.getProperty(S3Constants.S3_END_POINT); if (propEndPoint != null & !"".equals(propEndPoint)) { endpoint = propEndPoint; } /* * setting endpoint to remove latency of redirection. If endpoint is * not set, invocation first goes us standard region, which * redirects it to correct location. */ s3service.setEndpoint(endpoint); LOG.info("S3 service endpoint [{}] ", endpoint); int writeThreads = 10; String writeThreadsStr = prop.getProperty(S3Constants.S3_WRITE_THREADS); if (writeThreadsStr != null) { writeThreads = Integer.parseInt(writeThreadsStr); } LOG.info("Using thread pool of [{}] threads in S3 transfer manager.", writeThreads); tmx = new TransferManager(s3service, (ThreadPoolExecutor) Executors.newFixedThreadPool(writeThreads, new NamedThreadFactory("s3-transfer-manager-worker"))); int asyncWritePoolSize = 10; String maxConnsStr = prop.getProperty(S3Constants.S3_MAX_CONNS); if (maxConnsStr != null) { asyncWritePoolSize = Integer.parseInt(maxConnsStr) - writeThreads; } asyncWriteExecuter = (ThreadPoolExecutor) Executors.newFixedThreadPool(asyncWritePoolSize, new NamedThreadFactory("s3-write-worker")); String renameKeyProp = prop.getProperty(S3Constants.S3_RENAME_KEYS); boolean renameKeyBool = (renameKeyProp == null || "".equals(renameKeyProp)) ? true : Boolean.parseBoolean(renameKeyProp); if (renameKeyBool) { renameKeys(); } LOG.debug("S3 Backend initialized in [{}] ms", +(System.currentTimeMillis() - startTime.getTime())); } catch (Exception e) { LOG.debug(" error ", e); throw new DataStoreException("Could not initialize S3 from " + prop, e); } finally { if (contextClassLoader != null) { Thread.currentThread().setContextClassLoader(contextClassLoader); } } }
From source file:org.apache.jackrabbit.oak.blob.cloud.aws.s3.S3Backend.java
License:Apache License
public void init(CachingDataStore store, String homeDir, Properties prop) throws DataStoreException { ClassLoader contextClassLoader = Thread.currentThread().getContextClassLoader(); try {//from w w w .j a v a 2 s . c o m startTime = new Date(); Thread.currentThread().setContextClassLoader(getClass().getClassLoader()); LOG.debug("init"); this.store = store; s3ReqDecorator = new S3RequestDecorator(prop); s3service = Utils.openService(prop); if (bucket == null || "".equals(bucket.trim())) { bucket = prop.getProperty(S3Constants.S3_BUCKET); } String region = prop.getProperty(S3Constants.S3_REGION); Region s3Region = null; if (StringUtils.isNullOrEmpty(region)) { com.amazonaws.regions.Region ec2Region = Regions.getCurrentRegion(); if (ec2Region != null) { s3Region = Region.fromValue(ec2Region.getName()); } else { throw new AmazonClientException("parameter [" + S3Constants.S3_REGION + "] not configured and cannot be derived from environment"); } } else { if (Utils.DEFAULT_AWS_BUCKET_REGION.equals(region)) { s3Region = Region.US_Standard; } else if (Region.EU_Ireland.toString().equals(region)) { s3Region = Region.EU_Ireland; } else { s3Region = Region.fromValue(region); } } if (!s3service.doesBucketExist(bucket)) { s3service.createBucket(bucket, s3Region); LOG.info("Created bucket [{}] in [{}] ", bucket, region); } else { LOG.info("Using bucket [{}] in [{}] ", bucket, region); } int writeThreads = 10; String writeThreadsStr = prop.getProperty(S3Constants.S3_WRITE_THREADS); if (writeThreadsStr != null) { writeThreads = Integer.parseInt(writeThreadsStr); } LOG.info("Using thread pool of [{}] threads in S3 transfer manager.", writeThreads); tmx = new TransferManager(s3service, (ThreadPoolExecutor) Executors.newFixedThreadPool(writeThreads, new NamedThreadFactory("s3-transfer-manager-worker"))); int asyncWritePoolSize = 10; String maxConnsStr = prop.getProperty(S3Constants.S3_MAX_CONNS); if (maxConnsStr != null) { asyncWritePoolSize = Integer.parseInt(maxConnsStr) - writeThreads; } asyncWriteExecuter = (ThreadPoolExecutor) Executors.newFixedThreadPool(asyncWritePoolSize, new NamedThreadFactory("s3-write-worker")); String renameKeyProp = prop.getProperty(S3Constants.S3_RENAME_KEYS); boolean renameKeyBool = (renameKeyProp == null || "".equals(renameKeyProp)) ? false : Boolean.parseBoolean(renameKeyProp); LOG.info("Rename keys [{}]", renameKeyBool); if (renameKeyBool) { renameKeys(); } LOG.debug("S3 Backend initialized in [{}] ms", +(System.currentTimeMillis() - startTime.getTime())); } catch (Exception e) { LOG.debug(" error ", e); Map<String, String> filteredMap = Maps.newHashMap(); if (prop != null) { filteredMap = Maps.filterKeys(Maps.fromProperties(prop), new Predicate<String>() { @Override public boolean apply(String input) { return !input.equals(S3Constants.ACCESS_KEY) && !input.equals(S3Constants.SECRET_KEY); } }); } throw new DataStoreException("Could not initialize S3 from " + filteredMap, e); } finally { if (contextClassLoader != null) { Thread.currentThread().setContextClassLoader(contextClassLoader); } } }
From source file:org.pentaho.amazon.client.impl.PricingClientFactory.java
License:Apache License
@Override public PricingClient createClient(String accessKey, String secretKey, String region) { AmazonClientCredentials clientCredentials = new AmazonClientCredentials(accessKey, secretKey, region); AWSPricing awsPricingClient = AWSPricingAsyncClientBuilder.standard() .withRegion(Region.US_Standard.toAWSRegion().getName()) .withCredentials(new AWSStaticCredentialsProvider(clientCredentials.getAWSCredentials())).build(); PricingClient pricingClient = new PricingClientImpl(awsPricingClient, region); return pricingClient; }