@Override public Void call() { s3.deleteObject(config.getBucketName(), identifier); return null; } }, OPERATION_DELETE_OBJECT);
@Override public Void call() { s3.deleteObject(config.getBucketName(), identifier); return null; } }, OPERATION_DELETE_OBJECT);
@Override public AccessControlList call() { if (versionId == null) return s3.getObjectAcl(config.getBucketName(), key); else return s3.getObjectAcl(config.getBucketName(), key, versionId); } }, OPERATION_GET_ACL);
@Override public InputStream call() { GetObjectRequest request = new GetObjectRequest(config.getBucketName(), key, versionId); return s3.getObject(request).getObjectContent(); } }, OPERATION_OPEN_DATA_STREAM);
@Override public ObjectMetadata call() { GetObjectMetadataRequest request = new GetObjectMetadataRequest(config.getBucketName(), key, versionId); return s3.getObjectMetadata(request); } }, OPERATION_HEAD_OBJECT);
@Override public VersionListing call() { if (fListing == null) { return s3.listVersions(config.getBucketName(), key, null, null, "/", null); } else { return s3.listNextBatchOfVersions(fListing); } } }, OPERATION_LIST_VERSIONS);
@Override public ObjectListing call() { ListObjectsRequest request = new ListObjectsRequest().withBucketName(config.getBucketName()); request.setPrefix("".equals(prefix) ? null : prefix); // Note: AWS SDK will always set encoding-type=url, but will only decode automatically if we // leave the value null return s3.listObjects(request); } }, OPERATION_LIST_OBJECTS);
@Override public Void call() { s3.deleteObjects(new DeleteObjectsRequest(config.getBucketName()).withKeys(deleteVersions)); return null; } }, OPERATION_DELETE_OBJECTS);
@Override public VersionListing call() { ListVersionsRequest request = new ListVersionsRequest().withBucketName(config.getBucketName()); request.setPrefix("".equals(prefix) ? null : prefix); // AWS SDK will always set this anyway.. this is for clarity request.setEncodingType("url"); return s3.listVersions(request); } }, OPERATION_LIST_VERSIONS);
final CopyObjectRequest cReq = new CopyObjectRequest(config.getBucketName(), identifier, config.getBucketName(), identifier); cReq.setNewObjectMetadata(s3MetaFromSyncMeta(object.getMetadata())); time(new Function<Void>() {
Assert.hasText(config.getBucketName(), "bucketName is required"); Assert.isTrue(config.getBucketName().matches("[A-Za-z0-9._-]+"), config.getBucketName() + " is not a valid bucket name"); boolean bucketExists = s3.doesBucketExist(config.getBucketName()); BucketVersioningConfiguration versioningConfig = s3.getBucketVersioningConfiguration(config.getBucketName()); List<String> versionedStates = Arrays.asList(BucketVersioningConfiguration.ENABLED, BucketVersioningConfiguration.SUSPENDED); bucketHasVersions = versionedStates.contains(versioningConfig.getStatus()); s3.createBucket(config.getBucketName()); bucketExists = true; if (config.isIncludeVersions()) { s3.setBucketVersioningConfiguration(new SetBucketVersioningConfigurationRequest(config.getBucketName(), new BucketVersioningConfiguration(BucketVersioningConfiguration.ENABLED))); bucketHasVersions = true; throw new ConfigurationException("The bucket " + config.getBucketName() + " does not exist.");
S3ProgressListener progressListener = null; if (obj.getMetadata().isDirectory()) { req = new PutObjectRequest(config.getBucketName(), targetKey, new ByteArrayInputStream(new byte[0]), om); } else if (file != null) { req = new PutObjectRequest(config.getBucketName(), targetKey, file).withMetadata(om); progressListener = new ByteTransferListener(obj); } else { if (options.isMonitorPerformance()) stream = new ProgressInputStream(stream, new PerformanceListener(getWriteWindow())); req = new PutObjectRequest(config.getBucketName(), targetKey, stream, om);
Assert.assertNull("source host should be null", s3Source.getHost()); Assert.assertEquals("source port mismatch", -1, s3Source.getPort()); Assert.assertEquals("source bucket mismatch", sourceBucket, s3Source.getBucketName()); Assert.assertNull("source keyPrefix should be null", s3Source.getKeyPrefix()); Assert.assertTrue("source includeVersions should be enabled", s3Source.isIncludeVersions()); Assert.assertEquals("target host mismatch", targetHost, s3Target.getHost()); Assert.assertEquals("target port mismatch", targetPort, s3Target.getPort()); Assert.assertEquals("target bucket mismatch", targetBucket, s3Target.getBucketName()); Assert.assertEquals("target keyPrefix mismatch", targetKeyPrefix, s3Target.getKeyPrefix()); Assert.assertTrue("target createBucket should be enabled", s3Target.isCreateBucket());