diff --git a/src/main/java/gov/nasa/podaac/forge/FootprintHandler.java b/src/main/java/gov/nasa/podaac/forge/FootprintHandler.java index ffa50eb..2869000 100644 --- a/src/main/java/gov/nasa/podaac/forge/FootprintHandler.java +++ b/src/main/java/gov/nasa/podaac/forge/FootprintHandler.java @@ -413,8 +413,10 @@ public String download(String bucket, String key, String outputFileAbsolutePath) File file = new File(outputFileAbsolutePath); if (!StringUtils.isBlank(bucket) && !StringUtils.isBlank(key)) { - s3Client.getObject(new GetObjectRequest( - bucket, key), file); + GetObjectRequest getObjectRequest = new GetObjectRequest(bucket, key); + // Enable Requester Pays for S3 downloads + getObjectRequest.withRequesterPays(true); + s3Client.getObject(getObjectRequest, file); return file.getAbsolutePath(); } else { return ""; @@ -437,7 +439,10 @@ public String upload(String bucket, String key, File file) { String path = bucket + "/" + key; try { AdapterLogger.LogInfo(this.className + " Uploading an object: " + path); - s3Client.putObject(new PutObjectRequest(bucket, key, file)); + PutObjectRequest putObjectRequest = new PutObjectRequest(bucket, key, file); + // Enable Requester Pays for S3 uploads + putObjectRequest.withRequesterPays(true); + s3Client.putObject(putObjectRequest); AdapterLogger.LogInfo(this.className + " Finished uploading an object: " + path); } catch (AmazonServiceException ase) { AdapterLogger.LogError(this.className + " Caught an AmazonServiceException, which " +