]> nmode's Git Repositories - signal-cli/blobdiff - lib/src/main/java/org/asamk/signal/manager/helper/SyncHelper.java
Use UploadSpec for attachment uploads
[signal-cli] / lib / src / main / java / org / asamk / signal / manager / helper / SyncHelper.java
index 0d516eb661675afb042c795ed4d70e6ccf36671f..db8ee935ee747f1f7a4169128c0691b7450bdb21 100644 (file)
@@ -36,6 +36,7 @@ import org.whispersystems.signalservice.api.messages.multidevice.StickerPackOper
 import org.whispersystems.signalservice.api.messages.multidevice.VerifiedMessage;
 import org.whispersystems.signalservice.api.push.SignalServiceAddress;
 import org.whispersystems.signalservice.internal.push.SyncMessage;
+import org.whispersystems.signalservice.internal.push.http.ResumableUploadSpec;
 
 import java.io.FileInputStream;
 import java.io.FileOutputStream;
@@ -115,10 +116,15 @@ public class SyncHelper {
 
             if (groupsFile.exists() && groupsFile.length() > 0) {
                 try (var groupsFileStream = new FileInputStream(groupsFile)) {
+                    final var uploadSpec = context.getDependencies()
+                            .getMessageSender()
+                            .getResumableUploadSpec()
+                            .toProto();
                     var attachmentStream = SignalServiceAttachment.newStreamBuilder()
                             .withStream(groupsFileStream)
                             .withContentType(MimeUtils.OCTET_STREAM)
                             .withLength(groupsFile.length())
+                            .withResumableUploadSpec(ResumableUploadSpec.from(uploadSpec))
                             .build();
 
                     context.getSendHelper().sendSyncMessage(SignalServiceSyncMessage.forGroups(attachmentStream));
@@ -158,10 +164,15 @@ public class SyncHelper {
 
             if (contactsFile.exists() && contactsFile.length() > 0) {
                 try (var contactsFileStream = new FileInputStream(contactsFile)) {
+                    final var uploadSpec = context.getDependencies()
+                            .getMessageSender()
+                            .getResumableUploadSpec()
+                            .toProto();
                     var attachmentStream = SignalServiceAttachment.newStreamBuilder()
                             .withStream(contactsFileStream)
                             .withContentType(MimeUtils.OCTET_STREAM)
                             .withLength(contactsFile.length())
+                            .withResumableUploadSpec(ResumableUploadSpec.from(uploadSpec))
                             .build();
 
                     context.getSendHelper()
@@ -400,7 +411,8 @@ public class SyncHelper {
             return Optional.empty();
         }
 
-        return Optional.of(AttachmentUtils.createAttachmentStream(streamDetails, Optional.empty()));
+        final var uploadSpec = context.getDependencies().getMessageSender().getResumableUploadSpec().toProto();
+        return Optional.of(AttachmentUtils.createAttachmentStream(streamDetails, Optional.empty(), uploadSpec));
     }
 
     private void downloadContactAvatar(SignalServiceAttachment avatar, RecipientAddress address) {