]> nmode's Git Repositories - signal-cli/blobdiff - lib/src/main/java/org/asamk/signal/manager/Manager.java
Fix inspections
[signal-cli] / lib / src / main / java / org / asamk / signal / manager / Manager.java
index 38d9e12cbcb760a622948295e979d13637234c34..41e08fb6309c9ddb8b1ff91faa0eed4d9a8f08c6 100644 (file)
@@ -2,6 +2,7 @@ package org.asamk.signal.manager;
 
 import org.asamk.signal.manager.api.AlreadyReceivingException;
 import org.asamk.signal.manager.api.AttachmentInvalidException;
+import org.asamk.signal.manager.api.CaptchaRequiredException;
 import org.asamk.signal.manager.api.Configuration;
 import org.asamk.signal.manager.api.Device;
 import org.asamk.signal.manager.api.DeviceLinkUrl;
@@ -13,16 +14,20 @@ import org.asamk.signal.manager.api.GroupSendingNotAllowedException;
 import org.asamk.signal.manager.api.Identity;
 import org.asamk.signal.manager.api.IdentityVerificationCode;
 import org.asamk.signal.manager.api.InactiveGroupLinkException;
+import org.asamk.signal.manager.api.IncorrectPinException;
 import org.asamk.signal.manager.api.InvalidDeviceLinkException;
 import org.asamk.signal.manager.api.InvalidStickerException;
 import org.asamk.signal.manager.api.InvalidUsernameException;
 import org.asamk.signal.manager.api.LastGroupAdminException;
 import org.asamk.signal.manager.api.Message;
 import org.asamk.signal.manager.api.MessageEnvelope;
+import org.asamk.signal.manager.api.NonNormalizedPhoneNumberException;
 import org.asamk.signal.manager.api.NotAGroupMemberException;
 import org.asamk.signal.manager.api.NotPrimaryDeviceException;
 import org.asamk.signal.manager.api.Pair;
 import org.asamk.signal.manager.api.PendingAdminApprovalException;
+import org.asamk.signal.manager.api.PinLockedException;
+import org.asamk.signal.manager.api.RateLimitException;
 import org.asamk.signal.manager.api.ReceiveConfig;
 import org.asamk.signal.manager.api.Recipient;
 import org.asamk.signal.manager.api.RecipientIdentifier;
@@ -81,13 +86,13 @@ public interface Manager extends Closeable {
      * @return A map of numbers to canonicalized number and uuid. If a number is not registered the uuid is null.
      * @throws IOException if it's unable to get the contacts to check if they're registered
      */
-    Map<String, UserStatus> getUserStatus(Set<String> numbers) throws IOException;
+    Map<String, UserStatus> getUserStatus(Set<String> numbers) throws IOException, RateLimitException;
 
     void updateAccountAttributes(String deviceName) throws IOException;
 
     Configuration getConfiguration();
 
-    void updateConfiguration(Configuration configuration) throws IOException, NotPrimaryDeviceException;
+    void updateConfiguration(Configuration configuration) throws NotPrimaryDeviceException;
 
     /**
      * Update the user's profile.
@@ -107,6 +112,14 @@ public interface Manager extends Closeable {
      */
     void deleteUsername() throws IOException;
 
+    void startChangeNumber(
+            String newNumber, boolean voiceVerification, String captcha
+    ) throws RateLimitException, IOException, CaptchaRequiredException, NonNormalizedPhoneNumberException, NotPrimaryDeviceException;
+
+    void finishChangeNumber(
+            String newNumber, String verificationCode, String pin
+    ) throws IncorrectPinException, PinLockedException, IOException, NotPrimaryDeviceException;
+
     void unregister() throws IOException;
 
     void deleteAccount() throws IOException;
@@ -117,7 +130,7 @@ public interface Manager extends Closeable {
 
     void removeLinkedDevices(int deviceId) throws IOException;
 
-    void addDeviceLink(DeviceLinkUrl linkUri) throws IOException, InvalidDeviceLinkException;
+    void addDeviceLink(DeviceLinkUrl linkUri) throws IOException, InvalidDeviceLinkException, NotPrimaryDeviceException;
 
     void setRegistrationLockPin(Optional<String> pin) throws IOException, NotPrimaryDeviceException;
 
@@ -147,11 +160,11 @@ public interface Manager extends Closeable {
 
     SendMessageResults sendReadReceipt(
             RecipientIdentifier.Single sender, List<Long> messageIds
-    ) throws IOException;
+    );
 
     SendMessageResults sendViewedReceipt(
             RecipientIdentifier.Single sender, List<Long> messageIds
-    ) throws IOException;
+    );
 
     SendMessageResults sendMessage(
             Message message, Set<RecipientIdentifier> recipients
@@ -186,7 +199,7 @@ public interface Manager extends Closeable {
 
     void setContactName(
             RecipientIdentifier.Single recipient, String givenName, final String familyName
-    ) throws NotPrimaryDeviceException, IOException, UnregisteredRecipientException;
+    ) throws NotPrimaryDeviceException, UnregisteredRecipientException;
 
     void setContactsBlocked(
             Collection<RecipientIdentifier.Single> recipient, boolean blocked
@@ -211,6 +224,8 @@ public interface Manager extends Closeable {
      */
     StickerPackUrl uploadStickerPack(File path) throws IOException, StickerPackInvalidException;
 
+    void installStickerPack(StickerPackUrl url) throws IOException;
+
     List<StickerPack> getStickerPacks();
 
     void requestAllSyncData() throws IOException;
@@ -284,7 +299,7 @@ public interface Manager extends Closeable {
     InputStream retrieveAttachment(final String id) throws IOException;
 
     @Override
-    void close() throws IOException;
+    void close();
 
     interface ReceiveMessageHandler {