X-Git-Url: https://git.nmode.ca/signal-cli/blobdiff_plain/7cd24a74af29468f67ebfdaed450bda06753b851..ce4afbe4c269d74e4cc3da93744e0dc980e536d7:/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 2223c96a..2921533e 100644 --- a/src/main/java/org/asamk/signal/dbus/DbusSignalImpl.java +++ b/src/main/java/org/asamk/signal/dbus/DbusSignalImpl.java @@ -62,7 +62,7 @@ import java.util.stream.Collectors; import static org.asamk.signal.dbus.DbusUtils.makeValidObjectPathElement; -public class DbusSignalImpl implements Signal { +public class DbusSignalImpl implements Signal, AutoCloseable { private final Manager m; private final DBusConnection connection; @@ -76,7 +76,7 @@ public class DbusSignalImpl implements Signal { private DbusReceiveMessageHandler dbusMessageHandler; private int subscriberCount; - private final static Logger logger = LoggerFactory.getLogger(DbusSignalImpl.class); + private static final Logger logger = LoggerFactory.getLogger(DbusSignalImpl.class); public DbusSignalImpl( final Manager m, DBusConnection connection, final String objectPath, final boolean noReceiveOnStart @@ -108,6 +108,7 @@ public class DbusSignalImpl implements Signal { updateIdentities(); } + @Override public void close() { if (dbusMessageHandler != null) { m.removeReceiveHandler(dbusMessageHandler); @@ -351,26 +352,16 @@ public class DbusSignalImpl implements Signal { public void sendReadReceipt( final String recipient, final List messageIds ) throws Error.Failure, Error.UntrustedIdentity { - try { - final var results = m.sendReadReceipt(getSingleRecipientIdentifier(recipient, m.getSelfNumber()), - messageIds); - checkSendMessageResults(results); - } catch (IOException e) { - throw new Error.Failure(e.getMessage()); - } + final var results = m.sendReadReceipt(getSingleRecipientIdentifier(recipient, m.getSelfNumber()), messageIds); + checkSendMessageResults(results); } @Override public void sendViewedReceipt( final String recipient, final List messageIds ) throws Error.Failure, Error.UntrustedIdentity { - try { - final var results = m.sendViewedReceipt(getSingleRecipientIdentifier(recipient, m.getSelfNumber()), - messageIds); - checkSendMessageResults(results); - } catch (IOException e) { - throw new Error.Failure(e.getMessage()); - } + final var results = m.sendViewedReceipt(getSingleRecipientIdentifier(recipient, m.getSelfNumber()), messageIds); + checkSendMessageResults(results); } @Override @@ -532,8 +523,6 @@ public class DbusSignalImpl implements Signal { m.setContactName(getSingleRecipientIdentifier(number, m.getSelfNumber()), name, ""); } catch (NotPrimaryDeviceException e) { throw new Error.Failure("This command doesn't work on linked devices."); - } catch (IOException e) { - throw new Error.Failure("Contact is not registered."); } catch (UnregisteredRecipientException e) { throw new Error.UntrustedIdentity(e.getSender().getIdentifier() + " is not registered."); } @@ -564,6 +553,7 @@ public class DbusSignalImpl implements Signal { } @Override + @Deprecated public void setGroupBlocked(final byte[] groupId, final boolean blocked) { try { m.setGroupsBlocked(List.of(getGroupId(groupId)), blocked); @@ -577,6 +567,7 @@ public class DbusSignalImpl implements Signal { } @Override + @Deprecated public List getGroupIds() { var groups = m.getGroups(); return groups.stream().map(g -> g.groupId().serialize()).toList(); @@ -599,6 +590,7 @@ public class DbusSignalImpl implements Signal { } @Override + @Deprecated public String getGroupName(final byte[] groupId) { var group = m.getGroup(getGroupId(groupId)); if (group == null || group.title() == null) { @@ -609,6 +601,7 @@ public class DbusSignalImpl implements Signal { } @Override + @Deprecated public List getGroupMembers(final byte[] groupId) { var group = m.getGroup(getGroupId(groupId)); if (group == null) { @@ -623,11 +616,16 @@ public class DbusSignalImpl implements Signal { public byte[] createGroup( final String name, final List members, final String avatar ) throws Error.AttachmentInvalid, Error.Failure, Error.InvalidNumber { - return updateGroup(new byte[0], name, members, avatar); + return updateGroupInternal(new byte[0], name, members, avatar); } @Override + @Deprecated public byte[] updateGroup(byte[] groupId, String name, List members, String avatar) { + return updateGroupInternal(groupId, name, members, avatar); + } + + public byte[] updateGroupInternal(byte[] groupId, String name, List members, String avatar) { try { groupId = nullIfEmpty(groupId); name = nullIfEmpty(name); @@ -662,6 +660,7 @@ public class DbusSignalImpl implements Signal { } @Override + @Deprecated public boolean isRegistered() { return true; } @@ -782,6 +781,7 @@ public class DbusSignalImpl implements Signal { } @Override + @Deprecated public void quitGroup(final byte[] groupId) { var group = getGroupId(groupId); try { @@ -821,6 +821,7 @@ public class DbusSignalImpl implements Signal { } @Override + @Deprecated public boolean isGroupBlocked(final byte[] groupId) { var group = m.getGroup(getGroupId(groupId)); if (group == null) { @@ -831,6 +832,7 @@ public class DbusSignalImpl implements Signal { } @Override + @Deprecated public boolean isMember(final byte[] groupId) { var group = m.getGroup(getGroupId(groupId)); if (group == null) { @@ -1238,8 +1240,6 @@ public class DbusSignalImpl implements Signal { Optional.ofNullable(unidentifiedDeliveryIndicators), Optional.ofNullable(typingIndicators), Optional.ofNullable(linkPreviews))); - } catch (IOException e) { - throw new Error.Failure("UpdateAccount error: " + e.getMessage()); } catch (NotPrimaryDeviceException e) { throw new Error.Failure("This command doesn't work on linked devices."); }