diff --git a/javav2/example_code/s3/pom.xml b/javav2/example_code/s3/pom.xml index 692ebb8a798..8a3402bc18d 100644 --- a/javav2/example_code/s3/pom.xml +++ b/javav2/example_code/s3/pom.xml @@ -3,15 +3,18 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 + S3J2Project S3J2Project 1.0-SNAPSHOT + UTF-8 21 21 21 + @@ -19,11 +22,13 @@ maven-surefire-plugin 3.5.2 + org.apache.maven.plugins maven-resources-plugin 3.3.1 + org.apache.maven.plugins maven-compiler-plugin @@ -31,18 +36,21 @@ 21 - + + log4j-plugin-processor + process-classes compile - process-classes only - org.apache.logging.log4j.core.config.plugins.processor.PluginProcessor + + org.apache.logging.log4j.core.config.plugins.processor.PluginProcessor + @@ -50,12 +58,13 @@ + software.amazon.awssdk bom - 2.31.8 + 2.35.5 pom import @@ -68,26 +77,25 @@ + + org.junit.jupiter junit-jupiter 5.11.4 test + + software.amazon.awssdk cloudformation - - com.fasterxml.jackson.core - jackson-databind - 2.14.2 - software.amazon.awssdk.crt aws-crt - 0.29.25 + 0.38.13 software.amazon.awssdk @@ -161,15 +169,12 @@ software.amazon.awssdk ec2 + + org.apache.logging.log4j log4j-core - - org.slf4j - slf4j-api - 2.0.13 - org.apache.logging.log4j log4j-slf4j2-impl @@ -178,6 +183,13 @@ org.apache.logging.log4j log4j-1.2-api + + org.slf4j + slf4j-api + 2.0.13 + + + org.apache.commons commons-lang3 @@ -188,5 +200,10 @@ gson 2.10.1 + + com.fasterxml.jackson.core + jackson-databind + 2.14.2 + - \ No newline at end of file + diff --git a/javav2/example_code/s3/src/main/java/com/example/s3/transfermanager/DownloadFile.java b/javav2/example_code/s3/src/main/java/com/example/s3/transfermanager/DownloadFile.java index 20a1fb5adb1..3d307bc6080 100644 --- a/javav2/example_code/s3/src/main/java/com/example/s3/transfermanager/DownloadFile.java +++ b/javav2/example_code/s3/src/main/java/com/example/s3/transfermanager/DownloadFile.java @@ -7,6 +7,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import software.amazon.awssdk.core.exception.SdkException; import software.amazon.awssdk.core.sync.RequestBody; import software.amazon.awssdk.transfer.s3.S3TransferManager; import software.amazon.awssdk.transfer.s3.model.CompletedFileDownload; @@ -18,6 +19,7 @@ import java.net.URISyntaxException; import java.net.URL; import java.nio.file.Files; +import java.nio.file.NoSuchFileException; import java.nio.file.Path; import java.nio.file.Paths; import java.util.UUID; @@ -127,20 +129,25 @@ private void setUp() { } public void cleanUp() { - S3ClientFactory.s3Client.deleteObject(b -> b.bucket(bucketName).key(key)); - S3ClientFactory.s3Client.deleteBucket(b -> b.bucket(bucketName)); - URL url = DownloadFile.class.getClassLoader().getResource(downloadedFileName); - if (url != null) { - try { - Files.delete(Paths.get(url.toURI().getPath())); - System.out.println("File deleted successfully"); - } catch (URISyntaxException e) { - System.err.println("Error converting URL to URI: " + e.getMessage()); - } catch (IOException e) { - System.err.println("Error deleting file " + e.getMessage()); + try { + S3ClientFactory.s3Client.deleteObject(b -> b.bucket(bucketName).key(key)); + S3ClientFactory.s3Client.deleteBucket(b -> b.bucket(bucketName)); + + // Directly use the downloadedFileWithPath + if (downloadedFileWithPath != null && !downloadedFileWithPath.isEmpty()) { + Path filePath = Paths.get(downloadedFileWithPath); + try { + Files.deleteIfExists(filePath); + System.out.println("File deleted successfully"); + } catch (NoSuchFileException e) { + System.err.println("The file wasn't found: " + e.getMessage()); + } catch (IOException e) { + System.err.println("Error deleting file: " + e.getMessage()); + } } - } else { - System.err.println("The file wasn't found"); + } catch (SdkException e) { + System.err.println("S3 operation failed: " + e.getMessage()); } } + } \ No newline at end of file diff --git a/javav2/example_code/s3/src/main/resources/batch/job-manifest.csv b/javav2/example_code/s3/src/main/resources/batch/job-manifest.csv index 4b90c99aa45..8d883369461 100644 --- a/javav2/example_code/s3/src/main/resources/batch/job-manifest.csv +++ b/javav2/example_code/s3/src/main/resources/batch/job-manifest.csv @@ -1,4 +1,4 @@ -x-49267f42-03d5-49ee-bfea-0cfab75f76a8,object-key-1.txt -x-49267f42-03d5-49ee-bfea-0cfab75f76a8,object-key-2.txt -x-49267f42-03d5-49ee-bfea-0cfab75f76a8,object-key-3.txt -x-49267f42-03d5-49ee-bfea-0cfab75f76a8,object-key-4.txt +x-e7f53ef2-703e-4822-9176-54a9ad64bce9,object-key-1.txt +x-e7f53ef2-703e-4822-9176-54a9ad64bce9,object-key-2.txt +x-e7f53ef2-703e-4822-9176-54a9ad64bce9,object-key-3.txt +x-e7f53ef2-703e-4822-9176-54a9ad64bce9,object-key-4.txt