1 package org
.asamk
.signal
.commands
;
3 import net
.sourceforge
.argparse4j
.inf
.Namespace
;
4 import net
.sourceforge
.argparse4j
.inf
.Subparser
;
6 import org
.asamk
.signal
.OutputWriter
;
7 import org
.asamk
.signal
.PlainTextWriterImpl
;
8 import org
.asamk
.signal
.manager
.Manager
;
10 import static org
.asamk
.signal
.util
.Util
.getLegacyIdentifier
;
12 public class ListContactsCommand
implements LocalCommand
{
14 private final OutputWriter outputWriter
;
16 public ListContactsCommand(final OutputWriter outputWriter
) {
17 this.outputWriter
= outputWriter
;
20 public static void attachToSubparser(final Subparser subparser
) {
21 subparser
.help("Show a list of known contacts with names.");
25 public void handleCommand(final Namespace ns
, final Manager m
) {
26 final var writer
= (PlainTextWriterImpl
) outputWriter
;
28 var contacts
= m
.getContacts();
29 for (var c
: contacts
) {
30 writer
.println("Number: {} Name: {} Blocked: {}",
31 getLegacyIdentifier(m
.resolveSignalServiceAddress(c
.first())),
33 c
.second().isBlocked());