From: AsamK Date: Sat, 12 Feb 2022 10:20:05 +0000 (+0100) Subject: Implement basic listAccounts for dbus client mode X-Git-Tag: v0.10.4~13 X-Git-Url: https://git.nmode.ca/signal-cli/commitdiff_plain/bb3b9692e3620863017be9a1c06dd3652d59ce1c?ds=sidebyside Implement basic listAccounts for dbus client mode Fixes #891 --- diff --git a/src/main/java/org/asamk/signal/dbus/DbusManagerImpl.java b/src/main/java/org/asamk/signal/dbus/DbusManagerImpl.java index 51323395..8d8d333f 100644 --- a/src/main/java/org/asamk/signal/dbus/DbusManagerImpl.java +++ b/src/main/java/org/asamk/signal/dbus/DbusManagerImpl.java @@ -50,6 +50,7 @@ import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Map; +import java.util.Objects; import java.util.Optional; import java.util.Set; import java.util.UUID; @@ -540,7 +541,14 @@ public class DbusManagerImpl implements Manager { @Override public List> getContacts() { - throw new UnsupportedOperationException(); + return signal.listNumbers().stream().map(n -> { + final var contactName = signal.getContactName(n); + if (contactName.length() == 0) { + return null; + } + return new Pair<>(new RecipientAddress(null, n), + new Contact(contactName, null, 0, signal.isContactBlocked(n), false)); + }).filter(Objects::nonNull).toList(); } @Override