]> nmode's Git Repositories - signal-cli/blobdiff - src/main/java/org/asamk/signal/commands/UpdateProfileCommand.java
Decrypt and verify the profile payment address
[signal-cli] / src / main / java / org / asamk / signal / commands / UpdateProfileCommand.java
index bd3d59bd2f6bbf2dd8ac9a08d69d80f5c5072752..1edb6df985ced69758327e8f19042d5b3ac0da65 100644 (file)
@@ -4,14 +4,14 @@ import net.sourceforge.argparse4j.impl.Arguments;
 import net.sourceforge.argparse4j.inf.Namespace;
 import net.sourceforge.argparse4j.inf.Subparser;
 
-import org.asamk.signal.OutputWriter;
 import org.asamk.signal.commands.exceptions.CommandException;
 import org.asamk.signal.commands.exceptions.IOErrorException;
 import org.asamk.signal.manager.Manager;
+import org.asamk.signal.manager.api.UpdateProfile;
+import org.asamk.signal.output.OutputWriter;
 
 import java.io.File;
 import java.io.IOException;
-import java.util.Optional;
 
 public class UpdateProfileCommand implements JsonRpcLocalCommand {
 
@@ -44,12 +44,17 @@ public class UpdateProfileCommand implements JsonRpcLocalCommand {
         var avatarPath = ns.getString("avatar");
         boolean removeAvatar = Boolean.TRUE.equals(ns.getBoolean("remove-avatar"));
 
-        Optional<File> avatarFile = removeAvatar
-                ? Optional.empty()
-                : avatarPath == null ? null : Optional.of(new File(avatarPath));
+        File avatarFile = removeAvatar || avatarPath == null ? null : new File(avatarPath);
 
         try {
-            m.setProfile(givenName, familyName, about, aboutEmoji, avatarFile);
+            m.updateProfile(UpdateProfile.newBuilder()
+                    .withGivenName(givenName)
+                    .withFamilyName(familyName)
+                    .withAbout(about)
+                    .withAboutEmoji(aboutEmoji)
+                    .withAvatar(avatarFile)
+                    .withDeleteAvatar(removeAvatar)
+                    .build());
         } catch (IOException e) {
             throw new IOErrorException("Update profile error: " + e.getMessage(), e);
         }