]> nmode's Git Repositories - signal-cli/blobdiff - lib/src/main/java/org/asamk/signal/manager/MultiAccountManagerImpl.java
Cleanup manager package
[signal-cli] / lib / src / main / java / org / asamk / signal / manager / MultiAccountManagerImpl.java
index 1a5ea266484b0d1bd90aa91b1a9a0da85da67786..4c67fd12883b392dac6ad9d9ebb1580f89264fb8 100644 (file)
@@ -17,7 +17,7 @@ import java.util.Set;
 import java.util.concurrent.TimeoutException;
 import java.util.function.Consumer;
 
-public class MultiAccountManagerImpl implements MultiAccountManager {
+class MultiAccountManagerImpl implements MultiAccountManager {
 
     private final static Logger logger = LoggerFactory.getLogger(MultiAccountManagerImpl.class);
 
@@ -25,19 +25,19 @@ public class MultiAccountManagerImpl implements MultiAccountManager {
     private final Set<Consumer<Manager>> onManagerRemovedHandlers = new HashSet<>();
     private final Set<Manager> managers = new HashSet<>();
     private final Map<URI, ProvisioningManager> provisioningManagers = new HashMap<>();
-    private final File dataPath;
+    private final File settingsPath;
     private final ServiceEnvironment serviceEnvironment;
     private final String userAgent;
 
     public MultiAccountManagerImpl(
             final Collection<Manager> managers,
-            final File dataPath,
+            final File settingsPath,
             final ServiceEnvironment serviceEnvironment,
             final String userAgent
     ) {
         this.managers.addAll(managers);
         managers.forEach(m -> m.addClosedListener(() -> this.removeManager(m)));
-        this.dataPath = dataPath;
+        this.settingsPath = settingsPath;
         this.serviceEnvironment = serviceEnvironment;
         this.userAgent = userAgent;
     }
@@ -49,6 +49,13 @@ public class MultiAccountManagerImpl implements MultiAccountManager {
         }
     }
 
+    @Override
+    public List<Manager> getManagers() {
+        synchronized (managers) {
+            return new ArrayList<>(managers);
+        }
+    }
+
     void addManager(final Manager m) {
         synchronized (managers) {
             if (managers.contains(m)) {
@@ -111,14 +118,13 @@ public class MultiAccountManagerImpl implements MultiAccountManager {
         return provisioningManagers.remove(deviceLinkUri);
     }
 
-    @Override
-    public ProvisioningManager getNewProvisioningManager() {
-        return ProvisioningManager.init(dataPath, serviceEnvironment, userAgent, this::addManager);
+    private ProvisioningManager getNewProvisioningManager() {
+        return ProvisioningManager.init(settingsPath, serviceEnvironment, userAgent, this::addManager);
     }
 
     @Override
     public RegistrationManager getNewRegistrationManager(String account) throws IOException {
-        return RegistrationManager.init(account, dataPath, serviceEnvironment, userAgent, this::addManager);
+        return RegistrationManager.init(account, settingsPath, serviceEnvironment, userAgent, this::addManager);
     }
 
     @Override