From 152fc27c742d66118bf6aed8d5d9eb25d9d300f0 Mon Sep 17 00:00:00 2001 From: Adimarantis Date: Tue, 16 Feb 2021 00:00:19 +0100 Subject: [PATCH] Added updateProfile on Dbus --- src/main/java/org/asamk/Signal.java | 2 ++ .../java/org/asamk/signal/dbus/DbusSignalImpl.java | 13 +++++++++++++ 2 files changed, 15 insertions(+) diff --git a/src/main/java/org/asamk/Signal.java b/src/main/java/org/asamk/Signal.java index 7f5d54d6..dfebe3ac 100644 --- a/src/main/java/org/asamk/Signal.java +++ b/src/main/java/org/asamk/Signal.java @@ -51,6 +51,8 @@ public interface Signal extends DBusInterface { boolean isRegistered(); + void updateProfile(String name,String about,String aboutEmoji,String avatarPath,boolean removeAvatar) throws Error.Failure; + class MessageReceived extends DBusSignal { private final long timestamp; diff --git a/src/main/java/org/asamk/signal/dbus/DbusSignalImpl.java b/src/main/java/org/asamk/signal/dbus/DbusSignalImpl.java index a2f6cace..cd964d1c 100644 --- a/src/main/java/org/asamk/signal/dbus/DbusSignalImpl.java +++ b/src/main/java/org/asamk/signal/dbus/DbusSignalImpl.java @@ -13,6 +13,7 @@ import org.whispersystems.libsignal.util.Pair; import org.whispersystems.signalservice.api.messages.SendMessageResult; import org.whispersystems.signalservice.api.push.SignalServiceAddress; import org.whispersystems.signalservice.api.util.InvalidNumberException; +import org.whispersystems.libsignal.util.guava.Optional; import java.io.File; import java.io.IOException; @@ -248,4 +249,16 @@ public class DbusSignalImpl implements Signal { public boolean isRegistered() { return true; } + + @Override + public void updateProfile(final String name,final String about,final String aboutEmoji, final String avatarPath, final boolean removeAvatar) { + try { + Optional avatarFile = removeAvatar + ? Optional.absent() + : avatarPath == null ? null : Optional.of(new File(avatarPath)); + m.setProfile(name, about, aboutEmoji, avatarFile); + } catch (IOException e) { + throw new Error.Failure(e.getMessage()); + } + } }