diff --git a/src/main/java/org/springframework/integration/aws/outbound/S3MessageHandler.java b/src/main/java/org/springframework/integration/aws/outbound/S3MessageHandler.java index a5ecac3..a7d4f31 100644 --- a/src/main/java/org/springframework/integration/aws/outbound/S3MessageHandler.java +++ b/src/main/java/org/springframework/integration/aws/outbound/S3MessageHandler.java @@ -22,8 +22,6 @@ import java.io.InputStream; import java.util.concurrent.CompletionException; import java.util.function.BiConsumer; -import com.amazonaws.util.Base64; -import com.amazonaws.util.Md5Utils; import org.apache.commons.io.FileUtils; import software.amazon.awssdk.core.async.AsyncRequestBody; import software.amazon.awssdk.core.internal.util.Mimetype; @@ -38,7 +36,9 @@ import software.amazon.awssdk.transfer.s3.model.Transfer; import software.amazon.awssdk.transfer.s3.model.UploadDirectoryRequest; import software.amazon.awssdk.transfer.s3.model.UploadRequest; import software.amazon.awssdk.transfer.s3.progress.TransferListener; +import software.amazon.awssdk.utils.BinaryUtils; import software.amazon.awssdk.utils.IoUtils; +import software.amazon.awssdk.utils.Md5Utils; import org.springframework.expression.EvaluationContext; import org.springframework.expression.Expression; @@ -296,7 +296,7 @@ public class S3MessageHandler extends AbstractReplyProducingMessageHandler { byte[] body = IoUtils.toByteArray(inputStream); if (putObjectRequest.contentMD5() == null) { byte[] md5Digest = DigestUtils.md5Digest(body); - putObjectRequestBuilder.contentMD5(Base64.encodeAsString(md5Digest)); + putObjectRequestBuilder.contentMD5(BinaryUtils.toBase64(md5Digest)); inputStream.reset(); } requestBody = AsyncRequestBody.fromBytes(body); diff --git a/src/test/java/org/springframework/integration/aws/outbound/S3MessageHandlerTests.java b/src/test/java/org/springframework/integration/aws/outbound/S3MessageHandlerTests.java index d729590..aa6156d 100644 --- a/src/test/java/org/springframework/integration/aws/outbound/S3MessageHandlerTests.java +++ b/src/test/java/org/springframework/integration/aws/outbound/S3MessageHandlerTests.java @@ -31,7 +31,6 @@ import java.util.concurrent.CompletableFuture; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; -import com.amazonaws.util.StringInputStream; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -46,6 +45,7 @@ import software.amazon.awssdk.services.s3.model.PutObjectResponse; import software.amazon.awssdk.services.s3.model.S3Object; import software.amazon.awssdk.transfer.s3.model.Copy; import software.amazon.awssdk.transfer.s3.progress.TransferListener; +import software.amazon.awssdk.utils.StringInputStream; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier;