X-Git-Url: https://git.nmode.ca/signal-cli/blobdiff_plain/591c0fe8a3744608575a6dcb1f6f4f9f818948d2..05abb3f9f6294677d2de97a9d88c8e9de04c10ec:/src/main/java/org/asamk/signal/commands/UnblockCommand.java diff --git a/src/main/java/org/asamk/signal/commands/UnblockCommand.java b/src/main/java/org/asamk/signal/commands/UnblockCommand.java index b4f6cc3b..6e067ee5 100644 --- a/src/main/java/org/asamk/signal/commands/UnblockCommand.java +++ b/src/main/java/org/asamk/signal/commands/UnblockCommand.java @@ -3,14 +3,19 @@ package org.asamk.signal.commands; import net.sourceforge.argparse4j.inf.Namespace; import net.sourceforge.argparse4j.inf.Subparser; -import org.asamk.signal.manager.GroupNotFoundException; +import org.asamk.signal.commands.exceptions.CommandException; import org.asamk.signal.manager.Manager; -import org.asamk.signal.util.GroupIdFormatException; +import org.asamk.signal.manager.groups.GroupIdFormatException; +import org.asamk.signal.manager.groups.GroupNotFoundException; import org.asamk.signal.util.Util; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.whispersystems.signalservice.api.util.InvalidNumberException; public class UnblockCommand implements LocalCommand { + private final static Logger logger = LoggerFactory.getLogger(UnblockCommand.class); + @Override public void attachToSubparser(final Subparser subparser) { subparser.addArgument("contact").help("Contact number").nargs("*"); @@ -19,31 +24,26 @@ public class UnblockCommand implements LocalCommand { } @Override - public int handleCommand(final Namespace ns, final Manager m) { - if (!m.isRegistered()) { - System.err.println("User is not registered."); - return 1; - } - - for (String contact_number : ns.getList("contact")) { + public void handleCommand(final Namespace ns, final Manager m) throws CommandException { + for (var contactNumber : ns.getList("contact")) { try { - m.setContactBlocked(contact_number, false); + m.setContactBlocked(contactNumber, false); } catch (InvalidNumberException e) { - System.err.println(e.getMessage()); + logger.warn("Invalid number: {}", contactNumber); } } if (ns.getList("group") != null) { - for (String groupIdString : ns.getList("group")) { + for (var groupIdString : ns.getList("group")) { try { - byte[] groupId = Util.decodeGroupId(groupIdString); + var groupId = Util.decodeGroupId(groupIdString); m.setGroupBlocked(groupId, false); - } catch (GroupIdFormatException | GroupNotFoundException e) { - System.err.println(e.getMessage()); + } catch (GroupIdFormatException e) { + logger.warn("Invalid group id: {}", groupIdString); + } catch (GroupNotFoundException e) { + logger.warn("Unknown group id: {}", groupIdString); } } } - - return 0; } }