Example usage for com.amazonaws.services.s3.model DeleteObjectsRequest getKeys

List of usage examples for com.amazonaws.services.s3.model DeleteObjectsRequest getKeys

Introduction

In this page you can find the example usage for com.amazonaws.services.s3.model DeleteObjectsRequest getKeys.

Prototype

public List<KeyVersion> getKeys() 

Source Link

Document

Returns the list of keys to delete from this bucket.

Usage

From source file:ch.admin.isb.hermes5.persistence.s3.S3RemoteAdapter.java

License:Apache License

@Override
public List<String> deletePath(String path) {
    List<String> keys = new ArrayList<String>();
    ObjectListing listObjects = s3.listObjects(this.bucketName.getStringValue(), path);
    List<S3ObjectSummary> objectSummaries = listObjects.getObjectSummaries();
    if (!objectSummaries.isEmpty()) {
        DeleteObjectsRequest deleteObjectsRequest = new DeleteObjectsRequest(bucketName.getStringValue());
        for (S3ObjectSummary s3ObjectSummary : objectSummaries) {
            String key = s3ObjectSummary.getKey();
            keys.add(key);//from  w w  w .ja v  a 2 s.  c  o  m
            deleteObjectsRequest.getKeys().add(new KeyVersion(key));
        }
        s3.deleteObjects(deleteObjectsRequest);
    }
    return keys;
}

From source file:org.finra.dm.dao.impl.MockS3OperationsImpl.java

License:Apache License

/**
 * Deletes a list of objects from a bucket.
 *//*from  w w  w  . jav a  2s  .co m*/
@Override
public DeleteObjectsResult deleteObjects(DeleteObjectsRequest deleteObjectRequest, AmazonS3Client s3Client) {
    LOGGER.debug("deleteObjects(): deleteObjectRequest.getBucketName() = " + deleteObjectRequest.getBucketName()
            + ", deleteObjectRequest.getKeys() = " + deleteObjectRequest.getKeys());

    List<DeletedObject> deletedObjects = new ArrayList<>();

    MockS3Bucket mockS3Bucket = mockS3Buckets.get(deleteObjectRequest.getBucketName());

    for (KeyVersion keyVersion : deleteObjectRequest.getKeys()) {
        String s3ObjectKey = keyVersion.getKey();

        if (mockS3Bucket.getObjects().remove(s3ObjectKey) != null) {
            DeletedObject deletedObject = new DeletedObject();
            deletedObject.setKey(s3ObjectKey);
            deletedObjects.add(deletedObject);
        }
    }

    return new DeleteObjectsResult(deletedObjects);
}

From source file:org.finra.herd.dao.impl.MockS3OperationsImpl.java

License:Apache License

@Override
public DeleteObjectsResult deleteObjects(DeleteObjectsRequest deleteObjectsRequest, AmazonS3 s3Client) {
    LOGGER.debug(//w ww.  jav a2s . c o  m
            "deleteObjects(): deleteObjectRequest.getBucketName() = " + deleteObjectsRequest.getBucketName()
                    + ", deleteObjectRequest.getKeys() = " + deleteObjectsRequest.getKeys());

    List<DeletedObject> deletedObjects = new ArrayList<>();

    MockS3Bucket mockS3Bucket = mockS3Buckets.get(deleteObjectsRequest.getBucketName());

    for (KeyVersion keyVersion : deleteObjectsRequest.getKeys()) {
        String s3ObjectKey = keyVersion.getKey();
        String s3ObjectVersion = keyVersion.getVersion();
        String s3ObjectKeyVersion = s3ObjectKey + (s3ObjectVersion != null ? s3ObjectVersion : "");

        mockS3Bucket.getObjects().remove(s3ObjectKey);

        if (mockS3Bucket.getVersions().remove(s3ObjectKeyVersion) != null) {
            DeletedObject deletedObject = new DeletedObject();
            deletedObject.setKey(s3ObjectKey);
            deletedObject.setVersionId(s3ObjectVersion);
            deletedObjects.add(deletedObject);
        }
    }

    return new DeleteObjectsResult(deletedObjects);
}