List of usage examples for com.amazonaws.services.s3.model BucketVersioningConfiguration BucketVersioningConfiguration
public BucketVersioningConfiguration(String status)
From source file:cloudExplorer.BucketClass.java
License:Open Source License
String controlVersioning(String access_key, String secret_key, String bucket, String endpoint, String region, Boolean enable) {//from w w w. j a v a 2 s. co m String message = null; AWSCredentials credentials = new BasicAWSCredentials(access_key, secret_key); AmazonS3 s3Client = new AmazonS3Client(credentials, new ClientConfiguration().withSignerOverride("S3SignerType")); s3Client.setEndpoint(endpoint); try { SetBucketVersioningConfigurationRequest request; if (enable) { request = new SetBucketVersioningConfigurationRequest(bucket, new BucketVersioningConfiguration(BucketVersioningConfiguration.ENABLED)); } else { request = new SetBucketVersioningConfigurationRequest(bucket, new BucketVersioningConfiguration(BucketVersioningConfiguration.SUSPENDED)); } s3Client.setBucketVersioningConfiguration(request); message = "\nBucket Versioning is:" + request.getVersioningConfiguration().getStatus(); } catch (Exception versioning) { message = "\n" + versioning.getMessage(); } if (message == null) { message = "\nVersioning failed."; } return message; }
From source file:com.emc.ecs.sync.target.S3Target.java
License:Open Source License
@Override public void configure(SyncSource source, Iterator<SyncFilter> filters, SyncTarget target) { Assert.hasText(accessKey, "accessKey is required"); Assert.hasText(secretKey, "secretKey is required"); Assert.hasText(bucketName, "bucketName is required"); Assert.isTrue(bucketName.matches("[A-Za-z0-9._-]+"), bucketName + " is not a valid bucket name"); AWSCredentials creds = new BasicAWSCredentials(accessKey, secretKey); ClientConfiguration config = new ClientConfiguration(); if (protocol != null) config.setProtocol(Protocol.valueOf(protocol.toUpperCase())); if (legacySignatures) config.setSignerOverride("S3SignerType"); if (socketTimeoutMs >= 0) config.setSocketTimeout(socketTimeoutMs); s3 = new AmazonS3Client(creds, config); if (endpoint != null) s3.setEndpoint(endpoint);/* w ww .java 2s. com*/ // TODO: generalize uri translation AwsS3Util.S3Uri s3Uri = new AwsS3Util.S3Uri(); s3Uri.protocol = protocol; s3Uri.endpoint = endpoint; s3Uri.accessKey = accessKey; s3Uri.secretKey = secretKey; s3Uri.rootKey = rootKey; if (targetUri == null) targetUri = s3Uri.toUri(); if (disableVHosts) { log.info( "The use of virtual hosted buckets on the s3 source has been DISABLED. Path style buckets will be used."); S3ClientOptions opts = new S3ClientOptions(); opts.setPathStyleAccess(true); s3.setS3ClientOptions(opts); } // for version support. TODO: genericize version support if (source instanceof S3Source) { s3Source = (S3Source) source; if (!s3Source.isVersioningEnabled()) includeVersions = false; // don't include versions if source versioning is off } else if (includeVersions) { throw new ConfigurationException( "Object versions are currently only supported with the S3 source & target plugins."); } if (!s3.doesBucketExist(bucketName)) { if (createBucket) { s3.createBucket(bucketName); if (includeVersions) s3.setBucketVersioningConfiguration(new SetBucketVersioningConfigurationRequest(bucketName, new BucketVersioningConfiguration(BucketVersioningConfiguration.ENABLED))); } else { throw new ConfigurationException("The bucket " + bucketName + " does not exist."); } } if (rootKey == null) rootKey = ""; // make sure rootKey isn't null if (includeVersions) { String status = s3.getBucketVersioningConfiguration(bucketName).getStatus(); if (BucketVersioningConfiguration.OFF.equals(status)) throw new ConfigurationException("The specified bucket does not have versioning enabled."); } if (mpuThresholdMB > AwsS3Util.MAX_PUT_SIZE_MB) { log.warn("{}MB is above the maximum PUT size of {}MB. the maximum will be used instead", mpuThresholdMB, AwsS3Util.MAX_PUT_SIZE_MB); mpuThresholdMB = AwsS3Util.MAX_PUT_SIZE_MB; } if (mpuPartSizeMB < AwsS3Util.MIN_PART_SIZE_MB) { log.warn("{}MB is below the minimum MPU part size of {}MB. the minimum will be used instead", mpuPartSizeMB, AwsS3Util.MIN_PART_SIZE_MB); mpuPartSizeMB = AwsS3Util.MIN_PART_SIZE_MB; } }
From source file:com.eucalyptus.cloudformation.resources.standard.actions.AWSS3BucketResourceAction.java
License:Open Source License
private SetBucketVersioningConfigurationRequest convertVersioningConfiguration(String bucketName, S3VersioningConfiguration versioningConfiguration) { BucketVersioningConfiguration bucketVersioningConfiguration = new BucketVersioningConfiguration( versioningConfiguration.getStatus()); return new SetBucketVersioningConfigurationRequest(bucketName, bucketVersioningConfiguration); }
From source file:org.chodavarapu.jgitaws.repositories.PackRepository.java
License:Eclipse Distribution License
public DfsOutputStream savePack(String repositoryName, String packName, long length) throws IOException { PipedInputStream pipedInputStream = new PipedInputStream(configuration.getStreamingBlockSize()); ObjectMetadata metaData = new ObjectMetadata(); metaData.setContentLength(length);//from w w w .java2 s.c om String objectName = objectName(repositoryName, packName); Async.fromAction(() -> { logger.debug("Attempting to save pack {} to S3 bucket", objectName); try { configuration.getS3Client().putObject(configuration.getPacksBucketName(), objectName, pipedInputStream, metaData); } catch (AmazonServiceException e) { if ("InvalidBucketName".equals(e.getErrorCode()) || "InvalidBucketState".equals(e.getErrorCode())) { logger.debug("S3 packs bucket does not exist yet, creating it"); configuration.getS3Client() .createBucket(new CreateBucketRequest(configuration.getPacksBucketName())); configuration.getS3Client().setBucketVersioningConfiguration( new SetBucketVersioningConfigurationRequest(configuration.getPacksBucketName(), new BucketVersioningConfiguration(BucketVersioningConfiguration.OFF))); logger.debug("Created bucket, saving pack {}", objectName); configuration.getS3Client().putObject(configuration.getPacksBucketName(), objectName, pipedInputStream, metaData); } else { throw e; } } }, null, Schedulers.io()); return new PipedDfsOutputStream(pipedInputStream, objectName, (int) length, configuration.getStreamingBlockSize()); }
From source file:org.mule.module.s3.simpleapi.SimpleAmazonS3AmazonDevKitImpl.java
License:Open Source License
public void setBucketVersioningStatus(@NotNull String bucketName, @NotNull VersioningStatus versioningStatus) { Validate.notNull(bucketName);/* ww w. j a v a 2s.c o m*/ s3.setBucketVersioningConfiguration(new SetBucketVersioningConfigurationRequest(bucketName, new BucketVersioningConfiguration(versioningStatus.toString()))); }