X-Git-Url: https://git.nmode.ca/signal-cli/blobdiff_plain/1c4a32fef4a3273099f0bfdd1b0dea72d32324ae..4acab9043c1f479adf735e193f9404a014b52ed7:/src/main/java/org/asamk/signal/dbus/DbusSignalImpl.java diff --git a/src/main/java/org/asamk/signal/dbus/DbusSignalImpl.java b/src/main/java/org/asamk/signal/dbus/DbusSignalImpl.java index 82cd8f8d..12cf7d4c 100644 --- a/src/main/java/org/asamk/signal/dbus/DbusSignalImpl.java +++ b/src/main/java/org/asamk/signal/dbus/DbusSignalImpl.java @@ -468,8 +468,7 @@ public class DbusSignalImpl implements Signal { @Override public boolean isRegistered() { - var result = isRegistered(List.of(m.getUsername())); - return result.get(0); + return true; } @Override @@ -480,21 +479,44 @@ public class DbusSignalImpl implements Signal { @Override public List isRegistered(List numbers) { - var results = new ArrayList (); - Map> registered; + var results = new ArrayList(); if (numbers.isEmpty()) { return results; } + + Map> registered; try { - registered = m.areUsersRegistered(new HashSet(numbers)); + registered = m.areUsersRegistered(new HashSet<>(numbers)); } catch (IOException e) { throw new Error.Failure(e.getMessage()); } - for (String number : numbers) { - UUID uuid = registered.get(number).second(); - results.add(uuid != null); + + return numbers.stream().map(number -> { + var uuid = registered.get(number).second(); + return uuid != null; + }).collect(Collectors.toList()); + } + + @Override + public void updateProfile( + final String givenName, + final String familyName, + final String about, + final String aboutEmoji, + String avatarPath, + final boolean removeAvatar + ) { + try { + if (avatarPath.isEmpty()) { + avatarPath = null; + } + Optional avatarFile = removeAvatar + ? Optional.absent() + : avatarPath == null ? null : Optional.of(new File(avatarPath)); + m.setProfile(givenName, familyName, about, aboutEmoji, avatarFile); + } catch (IOException e) { + throw new Error.Failure(e.getMessage()); } - return results; } @Override