2019-11-18 23:51:27 +01:00
|
|
|
package org.mercury_im.messenger;
|
2019-11-08 00:47:17 +01:00
|
|
|
|
2019-12-09 15:49:59 +01:00
|
|
|
import org.mercury_im.messenger.data.repository.Repositories;
|
2019-11-18 23:51:27 +01:00
|
|
|
import org.mercury_im.messenger.entity.Account;
|
2019-12-21 00:27:48 +01:00
|
|
|
import org.mercury_im.messenger.usecase.AddAccount;
|
|
|
|
import org.mercury_im.messenger.xmpp.MercuryConnection;
|
2019-11-12 00:07:57 +01:00
|
|
|
|
|
|
|
import java.util.HashMap;
|
|
|
|
import java.util.Map;
|
|
|
|
|
2019-12-02 02:31:32 +01:00
|
|
|
import javax.inject.Inject;
|
|
|
|
|
2019-11-08 00:47:17 +01:00
|
|
|
public class Messenger {
|
2019-11-12 00:07:57 +01:00
|
|
|
|
2019-12-09 13:50:26 +01:00
|
|
|
public static final String TAG = "MercuryIM";
|
|
|
|
|
2019-12-21 00:27:48 +01:00
|
|
|
private final Map<Long, MercuryConnection> connections = new HashMap<>();
|
|
|
|
private Repositories repositories;
|
2019-12-02 02:31:32 +01:00
|
|
|
|
|
|
|
@Inject
|
2019-12-09 15:49:59 +01:00
|
|
|
public Messenger(Repositories repositories) {
|
|
|
|
this.repositories = repositories;
|
2019-12-02 02:31:32 +01:00
|
|
|
}
|
|
|
|
|
2019-12-21 00:27:48 +01:00
|
|
|
public void addConnection(MercuryConnection connection) {
|
2019-11-12 00:07:57 +01:00
|
|
|
connections.put(connection.getAccount().getId(), connection);
|
|
|
|
}
|
|
|
|
|
2019-12-21 00:27:48 +01:00
|
|
|
public MercuryConnection getConnection(Account account) {
|
2019-11-18 00:04:28 +01:00
|
|
|
return connections.get(account.getId());
|
|
|
|
}
|
2019-12-09 13:50:26 +01:00
|
|
|
|
2019-12-21 00:27:48 +01:00
|
|
|
public AddAccount addAccount() {
|
|
|
|
return new AddAccount(repositories.getAccountRepository(), this);
|
2019-12-09 13:50:26 +01:00
|
|
|
}
|
2019-11-08 00:47:17 +01:00
|
|
|
}
|