|
|
|
@ -28,9 +28,11 @@ import software.amazon.awssdk.services.s3.model.ListBucketsRequest;
|
|
|
|
|
import software.amazon.awssdk.services.s3.model.ListBucketsResponse;
|
|
|
|
|
import software.amazon.awssdk.services.s3.model.ListObjectsV2Request;
|
|
|
|
|
import software.amazon.awssdk.services.s3.model.ListObjectsV2Response;
|
|
|
|
|
import software.amazon.awssdk.services.s3.model.NoSuchKeyException;
|
|
|
|
|
import software.amazon.awssdk.services.s3.model.PutObjectRequest;
|
|
|
|
|
import software.amazon.awssdk.services.s3.model.PutObjectResponse;
|
|
|
|
|
import software.amazon.awssdk.services.s3.model.S3Object;
|
|
|
|
|
import software.amazon.awssdk.services.s3.model.S3Response;
|
|
|
|
|
|
|
|
|
|
public class BucketOperator {
|
|
|
|
|
|
|
|
|
@ -156,9 +158,21 @@ public class BucketOperator {
|
|
|
|
|
* @param bucket
|
|
|
|
|
* @param key
|
|
|
|
|
* @param file
|
|
|
|
|
* @param replace
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
public static PutObjectResponse putObject(String bucket, String key, File file) {
|
|
|
|
|
public static S3Response putObject(String bucket, String key, File file, boolean replace) {
|
|
|
|
|
if(!replace) {
|
|
|
|
|
GetObjectRequest getObjectRequest = GetObjectRequest.builder()
|
|
|
|
|
.bucket(bucket)
|
|
|
|
|
.key(key)
|
|
|
|
|
.build();
|
|
|
|
|
try {
|
|
|
|
|
return client.getObject(getObjectRequest).response();
|
|
|
|
|
}catch (NoSuchKeyException e) {
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
PutObjectRequest objectRequest = PutObjectRequest.builder()
|
|
|
|
|
.bucket(bucket)
|
|
|
|
|
.key(key)
|
|
|
|
@ -184,13 +198,20 @@ public class BucketOperator {
|
|
|
|
|
return response.toString();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Get object length in bytes
|
|
|
|
|
* @param bucket
|
|
|
|
|
* @param key
|
|
|
|
|
* @return
|
|
|
|
|
* @throws IOException
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
public static Long getObjectSize( String bucket, String key)
|
|
|
|
|
throws IOException {
|
|
|
|
|
GetObjectRequest getObjectRequest = GetObjectRequest.builder()
|
|
|
|
|
.bucket(bucket)
|
|
|
|
|
.key(key)
|
|
|
|
|
.build();
|
|
|
|
|
|
|
|
|
|
return client.getObject(getObjectRequest).response().contentLength();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|