]> nmode's Git Repositories - signal-cli/blobdiff - src/main/java/org/asamk/signal/dbus/DbusSignalImpl.java
Add support for sending view once messages
[signal-cli] / src / main / java / org / asamk / signal / dbus / DbusSignalImpl.java
index 1b8b78255588f465c50adf23f3c1e4f1ce19c7cb..725df8b1a639be8b25a6853018ee52586bacadd3 100644 (file)
@@ -81,7 +81,10 @@ public class DbusSignalImpl implements Signal, AutoCloseable {
     private static final Logger logger = LoggerFactory.getLogger(DbusSignalImpl.class);
 
     public DbusSignalImpl(
-            final Manager m, DBusConnection connection, final String objectPath, final boolean noReceiveOnStart
+            final Manager m,
+            DBusConnection connection,
+            final String objectPath,
+            final boolean noReceiveOnStart
     ) {
         this.m = m;
         this.connection = connection;
@@ -233,6 +236,7 @@ public class DbusSignalImpl implements Signal, AutoCloseable {
         try {
             final var message = new Message(messageText,
                     attachments,
+                    false,
                     List.of(),
                     Optional.empty(),
                     Optional.empty(),
@@ -258,16 +262,12 @@ public class DbusSignalImpl implements Signal, AutoCloseable {
     }
 
     @Override
-    public long sendRemoteDeleteMessage(
-            final long targetSentTimestamp, final String recipient
-    ) {
+    public long sendRemoteDeleteMessage(final long targetSentTimestamp, final String recipient) {
         return sendRemoteDeleteMessage(targetSentTimestamp, List.of(recipient));
     }
 
     @Override
-    public long sendRemoteDeleteMessage(
-            final long targetSentTimestamp, final List<String> recipients
-    ) {
+    public long sendRemoteDeleteMessage(final long targetSentTimestamp, final List<String> recipients) {
         try {
             final var results = m.sendRemoteDeleteMessage(targetSentTimestamp,
                     getSingleRecipientIdentifiers(recipients, m.getSelfNumber()).stream()
@@ -323,7 +323,9 @@ public class DbusSignalImpl implements Signal, AutoCloseable {
 
     @Override
     public long sendPaymentNotification(
-            final byte[] receipt, final String note, final String recipient
+            final byte[] receipt,
+            final String note,
+            final String recipient
     ) throws Error.Failure {
         try {
             final var results = m.sendPaymentNotificationMessage(receipt,
@@ -338,7 +340,8 @@ public class DbusSignalImpl implements Signal, AutoCloseable {
 
     @Override
     public void sendTyping(
-            final String recipient, final boolean stop
+            final String recipient,
+            final boolean stop
     ) throws Error.Failure, Error.GroupNotFound, Error.UntrustedIdentity {
         try {
             final var results = m.sendTypingMessage(stop ? TypingAction.STOP : TypingAction.START,
@@ -355,7 +358,8 @@ public class DbusSignalImpl implements Signal, AutoCloseable {
 
     @Override
     public void sendReadReceipt(
-            final String recipient, final List<Long> messageIds
+            final String recipient,
+            final List<Long> messageIds
     ) throws Error.Failure, Error.UntrustedIdentity {
         final var results = m.sendReadReceipt(getSingleRecipientIdentifier(recipient, m.getSelfNumber()), messageIds);
         checkSendMessageResults(results);
@@ -363,7 +367,8 @@ public class DbusSignalImpl implements Signal, AutoCloseable {
 
     @Override
     public void sendViewedReceipt(
-            final String recipient, final List<Long> messageIds
+            final String recipient,
+            final List<Long> messageIds
     ) throws Error.Failure, Error.UntrustedIdentity {
         final var results = m.sendViewedReceipt(getSingleRecipientIdentifier(recipient, m.getSelfNumber()), messageIds);
         checkSendMessageResults(results);
@@ -389,11 +394,13 @@ public class DbusSignalImpl implements Signal, AutoCloseable {
 
     @Override
     public long sendNoteToSelfMessage(
-            final String messageText, final List<String> attachments
+            final String messageText,
+            final List<String> attachments
     ) throws Error.AttachmentInvalid, Error.Failure, Error.UntrustedIdentity {
         try {
             final var message = new Message(messageText,
                     attachments,
+                    false,
                     List.of(),
                     Optional.empty(),
                     Optional.empty(),
@@ -439,6 +446,7 @@ public class DbusSignalImpl implements Signal, AutoCloseable {
         try {
             final var message = new Message(messageText,
                     attachments,
+                    false,
                     List.of(),
                     Optional.empty(),
                     Optional.empty(),
@@ -461,7 +469,8 @@ public class DbusSignalImpl implements Signal, AutoCloseable {
 
     @Override
     public void sendGroupTyping(
-            final byte[] groupId, final boolean stop
+            final byte[] groupId,
+            final boolean stop
     ) throws Error.Failure, Error.GroupNotFound, Error.UntrustedIdentity {
         try {
             final var results = m.sendTypingMessage(stop ? TypingAction.STOP : TypingAction.START,
@@ -475,9 +484,7 @@ public class DbusSignalImpl implements Signal, AutoCloseable {
     }
 
     @Override
-    public long sendGroupRemoteDeleteMessage(
-            final long targetSentTimestamp, final byte[] groupId
-    ) {
+    public long sendGroupRemoteDeleteMessage(final long targetSentTimestamp, final byte[] groupId) {
         try {
             final var results = m.sendRemoteDeleteMessage(targetSentTimestamp,
                     Set.of(getGroupRecipientIdentifier(groupId)));
@@ -527,7 +534,7 @@ public class DbusSignalImpl implements Signal, AutoCloseable {
     @Override
     public void setContactName(final String number, final String name) {
         try {
-            m.setContactName(getSingleRecipientIdentifier(number, m.getSelfNumber()), name, "");
+            m.setContactName(getSingleRecipientIdentifier(number, m.getSelfNumber()), name, "", null, null, null);
         } catch (NotPrimaryDeviceException e) {
             throw new Error.Failure("This command doesn't work on linked devices.");
         } catch (UnregisteredRecipientException e) {
@@ -621,7 +628,9 @@ public class DbusSignalImpl implements Signal, AutoCloseable {
 
     @Override
     public byte[] createGroup(
-            final String name, final List<String> members, final String avatar
+            final String name,
+            final List<String> members,
+            final String avatar
     ) throws Error.AttachmentInvalid, Error.Failure, Error.InvalidNumber {
         return updateGroupInternal(new byte[0], name, members, avatar);
     }
@@ -900,7 +909,8 @@ public class DbusSignalImpl implements Signal, AutoCloseable {
     }
 
     private static void checkGroupSendMessageResults(
-            long timestamp, Collection<SendMessageResult> results
+            long timestamp,
+            Collection<SendMessageResult> results
     ) throws DBusExecutionException {
         if (results.size() == 1) {
             checkSendMessageResult(timestamp, results.stream().findFirst().get());
@@ -927,7 +937,8 @@ public class DbusSignalImpl implements Signal, AutoCloseable {
     }
 
     private static Set<RecipientIdentifier.Single> getSingleRecipientIdentifiers(
-            final Collection<String> recipientStrings, final String localNumber
+            final Collection<String> recipientStrings,
+            final String localNumber
     ) throws DBusExecutionException {
         final var identifiers = new HashSet<RecipientIdentifier.Single>();
         for (var recipientString : recipientStrings) {
@@ -937,7 +948,8 @@ public class DbusSignalImpl implements Signal, AutoCloseable {
     }
 
     private static RecipientIdentifier.Single getSingleRecipientIdentifier(
-            final String recipientString, final String localNumber
+            final String recipientString,
+            final String localNumber
     ) throws DBusExecutionException {
         try {
             return RecipientIdentifier.Single.fromString(recipientString, localNumber);